2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Научиться программированию
Сообщение11.02.2013, 12:33 
Очень хочется научиться программировать!
Помогите! С чего начать, с какой литературы?

 
 
 
 Re: Научиться программированию
Сообщение11.02.2013, 12:39 
Много путей. Как вариант, Абранов, Зима, Начала информатики. Плюс Абрамов, Гнездилова, Зима, ... Задачи по программированию. Плюс FreePascal и документация к нему. Это один вариант.

Но вообще, лучше выбрать специализацию, которая по душе. И уже задавать более конкретный вопрос.

 
 
 
 Re: Научиться программированию
Сообщение11.02.2013, 13:14 
mustitz в сообщении #682448 писал(а):
Много путей. Как вариант, Абранов, Зима, Начала информатики. Плюс Абрамов, Гнездилова, Зима, ... Задачи по программированию. Плюс FreePascal и документация к нему. Это один вариант.

Но вообще, лучше выбрать специализацию, которая по душе. И уже задавать более конкретный вопрос.

мне нужно начать с азов(т.е. научиться писать алгоритмы и т.д.)
я работаю в железнодорожной организации и для работы и повышения в должности хочу научиться программировать!

 
 
 
 Re: Научиться программированию
Сообщение11.02.2013, 13:22 
Это как раз медленный путь с азов. Сам в детстве проходил. Но немного привязанный к особенностям железа. В принципе, можно заменить FreePascal на какой-нить python и выборочно решать те же задачи

 
 
 
 Re: Научиться программированию
Сообщение11.02.2013, 15:25 
syroega2000 в сообщении #682457 писал(а):
мне нужно начать с азов(т.е. научиться писать алгоритмы и т.д.)
я работаю в железнодорожной организации и для работы и повышения в должности хочу научиться программировать!
Сначала нужно определить область программирования, которая нужна конкретно на Вашем рабочем месте.
Например, если Вы - бухгалтер, то Вам полезно было бы уметь программировать на Excel. Или писать запросы к используемой у Вас бухгалтерской системе (1С ?).

 
 
 
 Re: Научиться программированию
Сообщение11.02.2013, 20:25 
syroega2000 в сообщении #682457 писал(а):
mustitz в сообщении #682448 писал(а):
Много путей. Как вариант, Абранов, Зима, Начала информатики. Плюс Абрамов, Гнездилова, Зима, ... Задачи по программированию. Плюс FreePascal и документация к нему. Это один вариант.

Но вообще, лучше выбрать специализацию, которая по душе. И уже задавать более конкретный вопрос.

мне нужно начать с азов(т.е. научиться писать алгоритмы и т.д.)
я работаю в железнодорожной организации и для работы и повышения в должности хочу научиться программировать!

Из моих личных предпочтений - начинайте с паскаля. Учиться на нем все-таки проще. Я учился по древней-предревней книге Фаронова. Научитесь простейшим конструкциям, просто поймете для начала, что такое циклы, условные переходы и т. д.
Далее.
А вы уверены, что вам нужны именно алгоритмы? Если вы работаете в организации и вам программирование нужно для работы, то с вероятностью 95% вам пригодятся базы данных. Могу посоветовать курсы по основам реляционных БД на сайте intuit.ru (там кстати есть лекции по куче разных языков и технологий). Сам когда-то с них начинал. Там есть курс (даже не один), называется что-то типа "Основы реляционных баз данных". Немного реляционной алгебры, немного стандарта SQL92. Дальше можно переходить к изучению конкретных СУБД (советую PostgreSQL из бесплатных и Oracle - из платных, тем более что они друг на друга немного похожи).
Правда, совсем с нуля тяжело начинать работать именно с БД, потому что у вас фактически есть сервер и клиент, которые устроены совершенно по-разному, решают разные задачи и т. д.
А еще есть десктоп-программирование (это "обычные программы для Windows"), веб-программирование ("сайты"), еще всякие скрипты (макросы в MS Office, bash скрипты в Linux) и много чего еще. И каждая область - гигантский раздел с кучей альтернативных технологий.

Выбирайте.

-- 11.02.2013, 21:32 --

P. S. Хотя чего-то я размахнулся. Скорее всего, вы начнете с макросов в экселе и простеньких баз в аксессе.

 
 
 
 Re: Научиться программированию
Сообщение12.02.2013, 08:16 
Аватара пользователя
Начинать нужно с математики: представления чисел, логических операций, понятия
алгоритма, вычислительных автоматов.

Далее, нужно изучить матчасть: струру памяти, регистры процессора, косвенную
адресацию, слово состояния процессора, систему комманд и соглашение о связях.
Хорошо бы написать несколько маленькиз программ в кодах, посчитать вручную
смещения.

Теперь можно переходить в символическому программированию: давать имена
ячейкам памяти и адресам программы. Терерь можно написать программу побольше,
например, решить Ханойскую башню.

В качестве первого языка хорош С. Там всегда ясно, во что программа будет
странслирована. Жаль, что там нет массива меток. Не всегда ясно, что
получится из оператора switch . На этом уровна можно порешать задачи
школьных олимпиад по программированию.

Далее стоит познакомиться с методами программирования высокого уровня:
объектно-ориентированным, функциональным, логическим.

Наконец, нужно научиться работать в коллективе программистов с большим
объемом программ. Последнему, скорее всего, придется учиться на
рабочем месте.

А ещё нужно знать английский, продолжать долбить математику,
и знать эффективные алгоритмы решения типовых задач.

 
 
 
 Re: Научиться программированию
Сообщение12.02.2013, 11:49 
rockclimber в сообщении #682592 писал(а):
syroega2000 в сообщении #682457 писал(а):
mustitz в сообщении #682448 писал(а):
Много путей. Как вариант, Абранов, Зима, Начала информатики. Плюс Абрамов, Гнездилова, Зима, ... Задачи по программированию. Плюс FreePascal и документация к нему. Это один вариант.

Но вообще, лучше выбрать специализацию, которая по душе. И уже задавать более конкретный вопрос.

мне нужно начать с азов(т.е. научиться писать алгоритмы и т.д.)
я работаю в железнодорожной организации и для работы и повышения в должности хочу научиться программировать!

Из моих личных предпочтений - начинайте с паскаля. Учиться на нем все-таки проще. Я учился по древней-предревней книге Фаронова. Научитесь простейшим конструкциям, просто поймете для начала, что такое циклы, условные переходы и т. д.
Далее.
А вы уверены, что вам нужны именно алгоритмы? Если вы работаете в организации и вам программирование нужно для работы, то с вероятностью 95% вам пригодятся базы данных. Могу посоветовать курсы по основам реляционных БД на сайте intuit.ru (там кстати есть лекции по куче разных языков и технологий). Сам когда-то с них начинал. Там есть курс (даже не один), называется что-то типа "Основы реляционных баз данных". Немного реляционной алгебры, немного стандарта SQL92. Дальше можно переходить к изучению конкретных СУБД (советую PostgreSQL из бесплатных и Oracle - из платных, тем более что они друг на друга немного похожи).
Правда, совсем с нуля тяжело начинать работать именно с БД, потому что у вас фактически есть сервер и клиент, которые устроены совершенно по-разному, решают разные задачи и т. д.
А еще есть десктоп-программирование (это "обычные программы для Windows"), веб-программирование ("сайты"), еще всякие скрипты (макросы в MS Office, bash скрипты в Linux) и много чего еще. И каждая область - гигантский раздел с кучей альтернативных технологий.

Выбирайте.

-- 11.02.2013, 21:32 --

P. S. Хотя чего-то я размахнулся. Скорее всего, вы начнете с макросов в экселе и простеньких баз в аксессе.


Спасибо, огромное! Вы мне очень пом огли!:-)

-- 12.02.2013, 12:54 --

Sphinx Pinastri в сообщении #682752 писал(а):
Начинать нужно с математики: представления чисел, логических операций, понятия
алгоритма, вычислительных автоматов.

Далее, нужно изучить матчасть: струру памяти, регистры процессора, косвенную
адресацию, слово состояния процессора, систему комманд и соглашение о связях.
Хорошо бы написать несколько маленькиз программ в кодах, посчитать вручную
смещения.

Теперь можно переходить в символическому программированию: давать имена
ячейкам памяти и адресам программы. Терерь можно написать программу побольше,
например, решить Ханойскую башню.

В качестве первого языка хорош С. Там всегда ясно, во что программа будет
странслирована. Жаль, что там нет массива меток. Не всегда ясно, что
получится из оператора switch . На этом уровна можно порешать задачи
школьных олимпиад по программированию.

Далее стоит познакомиться с методами программирования высокого уровня:
объектно-ориентированным, функциональным, логическим.

Наконец, нужно научиться работать в коллективе программистов с большим
объемом программ. Последнему, скорее всего, придется учиться на
рабочем месте.

А ещё нужно знать английский, продолжать долбить математику,
и знать эффективные алгоритмы решения типовых задач.

Спасибо, огромное)))!!!

 
 
 
 Re: Научиться программированию
Сообщение15.02.2013, 11:47 
Sphinx Pinastri в сообщении #682752 писал(а):
Терерь можно написать программу побольше,
например, решить Ханойскую башню.

Гым-гым. Пресловутая игра "Ханойская башня" что-то совсем не известна среди геймеров, зато имеет просто зашкаливающую популярность среди обучателей программированию. Не идите у них на поводу. И не пишите такую программу. Вы сами потом в это играть не захотите. Это даром потраченное время. Хотите для практики кодить реальные игры - посмотрите, что популярно на Sourseforge.net. Еще и исходники получите, для разбирания основ.

 
 
 
 Re: Научиться программированию
Сообщение15.02.2013, 17:42 
TupaHo3aBp в сообщении #684155 писал(а):
Пресловутая игра "Ханойская башня" что-то совсем не известна среди геймеров
потому что она вовсе не является игрой :lol: А популярна среди обучателей, потому что наглядно демонстрирует применение рекурсии.
ЗЫ геймеры все объекты окружающего мира считают играми и делят их на хорошие и плохие. Например, растущее дерево - плохая игра, скучно играть, даром потраченное время.
TupaHo3aBp в сообщении #684155 писал(а):
Не идите у них на поводу.

 
 
 
 Re: Научиться программированию
Сообщение15.02.2013, 18:32 
syroega2000,
Вот эту тему тоже прочитайте.

 
 
 
 Re: Научиться программированию
Сообщение15.02.2013, 19:18 
Аватара пользователя
Не хотел писать в эту тему. Так как не являюсь учителям, но не удержался и напишу.

Насколько я знаю есть два метода получения знаний это практика и теория. Первое решать задачи, второе читать теорию. И разумеется теория без практике ничто. В соседней теме написали верно. Чтобы получать удовольствие надо заканчивать начитаю работу. Поэтому решать учебные задачи полезно.

Но это скучно и долго. Поэтому взрослым советую брать практическую задачу. С первого раза вы её не решите. Или решите неправильно или не красиво. Но с опытом всё придёт. Только не забывайте читать книги.

А да чужие исходники бывают хорошими, а бывают плохими. Также и статьи есть хорошие, а есть слепленные на скорую руку. Так что советую читать книги как правило в них более качественная информация.

Цитата:
Начинать нужно с ...
Начинать можно с чего угодно. Главное не остаться на одном месте, а расширять кругозор. А то бывает так, человек начал с ассемблера так всю жизнь на нём и остался. Начал с Си так всю жизнь и программирует на Си.
Причём это очень часто первый язык остаётся и последним.

 
 
 
 Re: Научиться программированию
Сообщение16.02.2013, 01:14 
Pavia в сообщении #684374 писал(а):
Причём это очень часто первый язык остаётся и последним.

Неправда, либо ты не программируешь и поэтому остаёшься, либо ты программируешь и понимаешь, что не всё быстро\просто\эффективно\красиво\(ваши_мысли) сделать на твоем языке и изучаешь новый.

 
 
 
 Re: Научиться программированию
Сообщение16.02.2013, 07:19 
Taus в сообщении #684507 писал(а):
и изучаешь новый.

Или, как вариант, пишешь свой : )

 
 
 [ Сообщений: 14 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group