Старый 20.06.2010, 08:07   #1   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
Выбор языка программирования.

здравствуйте.

я хочу научиться программировать. на фкн почти поступил.
в школе изучал паскаль. в паскале все понял(кроме разных библиотек. я их не изучал). немного в делфи игрался.

потом почему-то решил С++ изучить. прочитал и обмозговал справочник по С++ Герберт Шилдт. (там только для консольных программ все описано)

Теперь я подумал спросить у знающих людей. что мне изучать. может Java или C# или все-таки С++ или PHP(я и веб программированием интересуюсь, знаю HTML, CSS, Joomla). В общем посоветуйте, что сейчас лучше.
 
Старый 20.06.2010, 09:23   #2   
старый хрыч
 
Аватар для X0R
 
Сообщений: 6,334
Регистрация: 17.12.2006
Возраст: 38

X0R вне форума Не в сети
maxim-turaev, выбор языка зависит от цели.
Системные утили, игры - си, прикладной софт сподручнее клепать на шарпе, делфи (imho шарп перспективнее), думаешь в веб податься - пхп, тот же шарп для ASP.NET

Лучше знать хотя бы парочку языков, чтоб при необходимости мог быстро перейти с одного на другой.
 
Старый 20.06.2010, 09:38   #3   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
то есть шарп - самый перспективный. А по сути если знаешь несколько языков, то переход не составит труда.

а ява и шарп похожи?(я где-то слышал, что это почти одно и то же, только разные владельцы)
 
Старый 20.06.2010, 09:51   #4   
Moderator
 
Аватар для mexx
 
Сообщений: 2,261
Регистрация: 21.01.2004

mexx вне форума Не в сети
maxim-turaev, типа того. похожи. обоим тебя научат на фкн)
ЗЫЖ учи python
 
Старый 20.06.2010, 09:57   #5   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
питон он типа пхп?

только чем он лучше? пхп популярней по-моему.
 
Старый 20.06.2010, 11:38   #6   
Out There
 
Аватар для Part!zan
 
Сообщений: 5,910
Регистрация: 13.12.2004
Возраст: 47

Part!zan вне форума Не в сети
maxim-turaev, питон - скриптовый язык, как и пхп. Но в вебе он практически не используется, в отличие от пхп. Короче, если ты не знаешь куда податься, то и выбирать язык тебе еще рано. Учи то чему будут учить, а потом сам разберешься.
 
Старый 20.06.2010, 13:00   #7   
Форумец
 
Аватар для Spectator
 
Сообщений: 44,421
Регистрация: 27.05.2003
Возраст: 47

Spectator вне форума Не в сети
Цитата:
Сообщение от maxim-turaev Посмотреть сообщение
потом почему-то решил С++ изучить. прочитал и обмозговал справочник по С++ Герберт Шилдт. (там только для консольных программ все описано)
Ну вот и изучай дальше. А питоны и пыхапы - это на базу состоявшегося программиста за день ляжет.
Попадешь на ПММ - не верь паскалистам. Увидишь Михайлову - убей ее (с) )))
 
Старый 20.06.2010, 13:07   #8   
Форумец
 
Сообщений: 82
Регистрация: 15.09.2003

alexz вне форума Не в сети
Цитата:
Сообщение от Part!zan Посмотреть сообщение
Короче, если ты не знаешь куда податься, то и выбирать язык тебе еще рано. Учи то чему будут учить, а потом сам разберешься.
не, нифига подобного. на самом деле могут и не научить ничему, а только отбить желание.

надо выбрать программу, который хочешь написать. Под неё язык программирования, купить/скачать-распечатать книжку - и вперёд! делать и параллельно изучать.

А кстати джава и C# под всё годится, от веба до 3д-игрушек средней тяжести.
 
Старый 20.06.2010, 13:10   #9   
Форумец
 
Сообщений: 1,857
Регистрация: 25.06.2007
Возраст: 34

Flaming вне форума Не в сети
Цитата:
Сообщение от alexz Посмотреть сообщение
надо выбрать программу, который хочешь написать. Под неё язык программирования, купить/скачать-распечатать книжку - и вперёд! делать и параллельно изучать.
Да. Тупо изучать язык ради языка бесцельно - бесперспективно, подтверждаю. Куда лучше всё начинаешь понимать, когда это тебе нужно.
 
Старый 20.06.2010, 17:01   #10   
Out There
 
Аватар для Part!zan
 
Сообщений: 5,910
Регистрация: 13.12.2004
Возраст: 47

Part!zan вне форума Не в сети
alexz, учить, то что ему будут преподавать, все равно придется. Сейчас он ничего выбрать не сможет, потому что сам не знает, из серии "хочется чего-то, сам не знаю чего". Ты, вот, например, сразу выбрал на чем писать будешь?

Цитата:
Сообщение от alexz Посмотреть сообщение
джава и C# под всё годится, от веба до 3д-игрушек средней тяжести
Бейсик тоже для этого годится. И некоторые его даже для этого используют.
 
Старый 20.06.2010, 17:47   #11   
Moderator
 
Аватар для mexx
 
Сообщений: 2,261
Регистрация: 21.01.2004

mexx вне форума Не в сети
Part!zan, в вебе его доля меньше пхп, но всеже. Да и вообще, синтаксис у него приятный, красивый.
maxim-turaev, для веба можешь юзать python/perl/ruby/php, ASP.NET/JSP. Также все эти языки с разной степенью успеха можно использовать и в прикладном кодинге.
Это о языках, которых ты сменишь туеву хучу, поэтому лучше всего, на данном этапе, коль уж к нам на ФКН идешь - почитать книги Вирта и Кнута.
Будет очень и очень полезно.
 
Старый 20.06.2010, 17:57   #12   
Форумец
 
Аватар для Andrei_ra
 
Сообщений: 612
Регистрация: 14.05.2008
Возраст: 42

Andrei_ra вне форума Не в сети
Цитата:
Сообщение от mexx Посмотреть сообщение
Part!zan, в вебе его доля меньше пхп, но всеже. Да и вообще, синтаксис у него приятный, красивый.
maxim-turaev, для веба можешь юзать python/perl/ruby/php, ASP.NET/JSP. Также все эти языки с разной степенью успеха можно использовать и в прикладном кодинге.
Это о языках, которых ты сменишь туеву хучу, поэтому лучше всего, на данном этапе, коль уж к нам на ФКН идешь - почитать книги Вирта и Кнута.
Будет очень и очень полезно.
И тут мы возвращаемся к вечному ответу, что каждый язык предназначен для конкретных решений (попробуй ни инглише ругнуться так же витиевато как ты это можеш сделать на русском), поэтому для начала не рвать душу а посидеть на парах, послушать разговоры сокурсников и определить что ближе тебе то ли системное программирование то ли веб интерфейсы, то ли системы учета товаров и т.д., вариантов очень много и поверь разница в подходе большая. А потом уже и определишься какой язык выбрать.
 
Старый 20.06.2010, 18:25   #13   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
на данный момент мне больше интересен веб дизайн и веб программирование.

Цитата:
Сообщение от alexz Посмотреть сообщение
надо выбрать программу, который хочешь написать. Под неё язык программирования, купить/скачать-распечатать книжку - и вперёд! делать и параллельно изучать.
что касается программы то я хочу написать умный морской бой. Но, как я понимаю, для этого подойдет любой язык. консольный морской бой я и на паскале напишу.
вот графическая оболочка - это я уже не знаю. Слышал это во флеше несложно делать.

всем спасибо за советы.
 
Старый 20.06.2010, 20:57   #14   
Форумец
 
Аватар для Andrei_ra
 
Сообщений: 612
Регистрация: 14.05.2008
Возраст: 42

Andrei_ra вне форума Не в сети
в основном все начинали учиться на играх, главное глобальные цели изначально не ставить
 
Старый 21.06.2010, 02:07   #15   
Форумец
 
Сообщений: 28
Регистрация: 21.04.2010

exsulem вне форума Не в сети

Бугагашеньки просто, тут людей, которые конскую жопу от динамического массива отличить могут - раз два и обчелся, только советы и спрашивать.
В школах у нас не информатика, а кусок говна, причем этот кусок подается в купе с такой математикой, что рождает кучу не пойми чего на выходе. Мозг засран по самый не болуйся, но нужного ничего нет, нет системы и опыта самообучения.

1. Забей сейчас вообще на все языки. Алгебра и мат анализ со статистикой и вероятностью - это все твое и геометрия аналитическая.

1а. Пиано математика, что такое сложение, вычитание и индуктивное доказательство, классы эквивалентности. Бинарные числа, комплемент, бинарные операции и булевская алгебра. Потом простенький х86 проц: alu, gpr, memory etc. Как грузить в 32 бита 64 числа и т.п. ты должен представлять как это работает в тактах и уметь индуктивно доказывать инвариантность работы процессора и его частей. На основе этого ты понимаешь и разбираешься с памятью (где хип, где код) и ассемблером - твой первый язык. Ты понимаешь, в чем разница между асс и нативным кодом и откуда берутся первые грабли (hardware грабли или же первородные)) при программирование. Далее переходим к основам информатики.

2. Умная книжка по основам информатики включает: подробное описание и классификацию языков, машин и грамматик, теоремы накачки и т.д. и т.п. Дается понятие о времени и требуемой памяти для алгоритмов. Здесь ты знакомишься с матерью всех граблей в наших языках - протограбли. P\NP по времени и памяти - ты должен знать, в чем разница и уметь определять. Введение в NP Hard - как и почему, оно же введение в алгоритмы.

3. Алгоритмы включают в себя (когда ты уже шариш как они оделяться по времени и памяти) поиск нужных элементов в массивах (структурах), сортировки. Различные структуры - деревья (бинарные, красно-черные, пр. самобалансирующиеся бинарные кучки). Их оптимизация и заточка под память\время. Хеширование. Пара-другая алгоритмов для графов.

На этом этапе, ты все еще можешь обходиться паскалевским псевдокодом, т.б. не писать рабочие программы, а просто описывать, как они должны работать.

4. Реляционная теория, СУБД и SQL язык.

5. ?ML - как функциональный язык.

6. C & C++ как связку процедурного и ОО языка.

7. JAVA - как ОО язык с байт кодом и отсутствием поинторов. Зная все предыдущее, ты будешь понимать все ништяки, которые ты срубаешь от замкнутости простых типов и отсутствия поинторов, крэп коллектора. Также все грабли, которые всплывают при использование тех или иных структур и чем ты платишь за удобства. Несколько парадигм ОО программирования (фильтры\трубы, обсервы, контрол-модель-вью и т.д.), аспекты - таже жава, но это уже не совсем ОО, как надстройка.

7. Разработка и тестирование. Как составить спецификации и в чем разница между аджайл и инкрементной разработкой. Юнит тесты - интеграционные тесты, мутации и все что рядом. Системы контроля версий, багтрэкинг. Отстрел тупых и набор лучших программистов.

8. Параллельные вычисления. Калькуляции комуницирующих систем, классы эквивалентности, lock out, data race, etc. LTL, временные свойства и честность у тебя должны отлетать от зубов. Также знакомишься с многоядерными процессорами и их устройством. Можно чуть покодить там под жаву для закрепления или под куду.


В целом - это базовый курс, после которого ты сможешь читать и понимать почти любую литературу и куда там тебя дальше понесет, зависит от тебя.

А язык сейчас - английский. Хочешь выучиться – читать придется много и самому.
 
Старый 21.06.2010, 10:14   #16   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
exsulem, спасибо за разъяснения.
 
Старый 21.06.2010, 11:10   #17   
Форумец
 
Аватар для Andrei_ra
 
Сообщений: 612
Регистрация: 14.05.2008
Возраст: 42

Andrei_ra вне форума Не в сети
Цитата:
Сообщение от maxim-turaev Посмотреть сообщение
exsulem, спасибо за разъяснения.
смотри а то голова вспухнет, я бы привел аналогию - человек хочет выучиться на водителя к примеру категории В, а ему говорят ты чувак не слушай ни кого, здесь половина ж... от колеса ни отличат, ты сначала изучи термодинамические процессы происходящие при сгорании топлива, потом устройство двигателя, в плоть до допустимых размеров износа клапанов колец и др., и когда начнешь понимать это перейди к электронике и желательно зацепить схемотехнику мозгов авто, а так же разобраться в прошивке, короче дальше писать не буду и так поняли к чему это все - кончиться если терпения хватит универсальным механиком, может даже хорошим.

exsulem конечно молодец что дал такой развернутый ответ, но имхо для 99% это лишнее.
 
Старый 21.06.2010, 11:54   #18   
Форумец
 
Сообщений: 10
Регистрация: 19.06.2010
Возраст: 16

maxim-turaev вне форума Не в сети
я в общем-то так и подумал. наверняка процентов 50 расскажут в институте. а остальные 50 можно самому изучить, если понравилось. я тогда пока в вебе и в фотошопе сидеть буду, пока-что. там вроде нет всяких
Цитата:
Как грузить в 32 бита 64 числа и т.п. ты должен представлять как это работает в тактах и уметь индуктивно доказывать инвариантность работы процессора и его частей. На основе этого ты понимаешь и разбираешься с памятью (где хип, где код) и ассемблером - твой первый язык. Ты понимаешь, в чем разница между асс и нативным кодом и откуда берутся первые грабли (hardware грабли или же первородные)) при программирование.
 
Старый 21.06.2010, 16:50   #19   
⇓ ⇒ ⇐ ⇐ Z
 
Сообщений: 629
Регистрация: 24.04.2005
Возраст: 39

Zemezis вне форума Не в сети
Бросьте все, пишите на русском.
 
Старый 21.06.2010, 19:24   #20   
Out There
 
Аватар для Part!zan
 
Сообщений: 5,910
Регистрация: 13.12.2004
Возраст: 47

Part!zan вне форума Не в сети
Цитата:
Сообщение от exsulem Посмотреть сообщение
В целом - это базовый курс
Во прет человека... Наверное, жара влияет...
 
Старый 22.06.2010, 13:02   #21   
Кэп Улитка
 
Аватар для Yandex
 
Сообщений: 8,067
Регистрация: 04.05.2005
Возраст: 45

Yandex вне форума Не в сети
exsulem, зачем человека то пугать?
Для работы программистом в каком нить банке или ООО Рожки-Ножки большая часть из этого нафиг не нужна. Достаточно знать только один из SQL-диалектов и любой алгоритмический язык, а все остальное потом приложится, если потребуется.

maxim-turaev, php учить веселее всего - что то разобрал, сделал, результат виден сразу. Но и пользы от него не сильно много, если на веб не ориентироваться.
 
Старый 22.06.2010, 13:22   #22   
Форумец
 
Аватар для Andrei_ra
 
Сообщений: 612
Регистрация: 14.05.2008
Возраст: 42

Andrei_ra вне форума Не в сети
Да ладно мужики exsulem просто понтанулся немного, а мы так близко все это восприняли к сердцу помню лет 8-10 назад когда мне было около 18, была типа такой "фишки" процитировать на память какую-то главу из книг по психологии в которой через слово термины да еще сложно-произносимые, а все вокруг качают головой в удивлении от такой тирады, в общем была культурная аналогия матерных стишков, вот сейчас "пахнет" чем-то подобным. exsulem без обид
 
Старый 22.06.2010, 13:25   #23   
Форумец
 
Аватар для Spectator
 
Сообщений: 44,421
Регистрация: 27.05.2003
Возраст: 47

Spectator вне форума Не в сети
Цитата:
Сообщение от exsulem Посмотреть сообщение

Бугагашеньки просто, тут людей, которые конскую жопу от динамического массива отличить могут - раз два и обчелся, только советы и спрашивать.
В школах у нас не информатика, а кусок говна, причем этот кусок подается в купе с такой математикой, что рождает кучу не пойми чего на выходе. Мозг засран по самый не болуйся, но нужного ничего нет, нет системы и опыта самообучения.

1. Забей сейчас вообще на все языки. Алгебра и мат анализ со статистикой и вероятностью - это все твое и геометрия аналитическая.

1а. Пиано математика, что такое сложение, вычитание и индуктивное доказательство, классы эквивалентности. Бинарные числа, комплемент, бинарные операции и булевская алгебра. Потом простенький х86 проц: alu, gpr, memory etc. Как грузить в 32 бита 64 числа и т.п. ты должен представлять как это работает в тактах и уметь индуктивно доказывать инвариантность работы процессора и его частей. На основе этого ты понимаешь и разбираешься с памятью (где хип, где код) и ассемблером - твой первый язык. Ты понимаешь, в чем разница между асс и нативным кодом и откуда берутся первые грабли (hardware грабли или же первородные)) при программирование. Далее переходим к основам информатики.

2. Умная книжка по основам информатики включает: подробное описание и классификацию языков, машин и грамматик, теоремы накачки и т.д. и т.п. Дается понятие о времени и требуемой памяти для алгоритмов. Здесь ты знакомишься с матерью всех граблей в наших языках - протограбли. P\NP по времени и памяти - ты должен знать, в чем разница и уметь определять. Введение в NP Hard - как и почему, оно же введение в алгоритмы.

3. Алгоритмы включают в себя (когда ты уже шариш как они оделяться по времени и памяти) поиск нужных элементов в массивах (структурах), сортировки. Различные структуры - деревья (бинарные, красно-черные, пр. самобалансирующиеся бинарные кучки). Их оптимизация и заточка под память\время. Хеширование. Пара-другая алгоритмов для графов.

На этом этапе, ты все еще можешь обходиться паскалевским псевдокодом, т.б. не писать рабочие программы, а просто описывать, как они должны работать.

4. Реляционная теория, СУБД и SQL язык.

5. ?ML - как функциональный язык.

6. C & C++ как связку процедурного и ОО языка.

7. JAVA - как ОО язык с байт кодом и отсутствием поинторов. Зная все предыдущее, ты будешь понимать все ништяки, которые ты срубаешь от замкнутости простых типов и отсутствия поинторов, крэп коллектора. Также все грабли, которые всплывают при использование тех или иных структур и чем ты платишь за удобства. Несколько парадигм ОО программирования (фильтры\трубы, обсервы, контрол-модель-вью и т.д.), аспекты - таже жава, но это уже не совсем ОО, как надстройка.

7. Разработка и тестирование. Как составить спецификации и в чем разница между аджайл и инкрементной разработкой. Юнит тесты - интеграционные тесты, мутации и все что рядом. Системы контроля версий, багтрэкинг. Отстрел тупых и набор лучших программистов.

8. Параллельные вычисления. Калькуляции комуницирующих систем, классы эквивалентности, lock out, data race, etc. LTL, временные свойства и честность у тебя должны отлетать от зубов. Также знакомишься с многоядерными процессорами и их устройством. Можно чуть покодить там под жаву для закрепления или под куду.


В целом - это базовый курс, после которого ты сможешь читать и понимать почти любую литературу и куда там тебя дальше понесет, зависит от тебя.

А язык сейчас - английский. Хочешь выучиться – читать придется много и самому.
Забавные по эмоциональности размышления, хоть и слишком вычурные. С чем согласен безусловно - с английским языком. Его знать нужно. Соглашусь что знать или, по крайней мере, понимать ассемблер программисту просто необходимо, чего многим современным "праграмистам" от сохи сильно не хватает.
С пунктом номер 8 несогласен - это уже специфические знания. Здесь нужно знать теорию, и не более, чтобы можно было выучить когда понадобится. С 7 - аналогично, без знания Java можно вполне прекрасно существовать. Я всё жду пока это чудо до конца вымрет, но оно, сцуко, переметнулось и крепко засело в ряде специфических областей, теперь ссаными тряпками не выгонишь, с 4 согласен - знать хотя бы основы SQL и реляционных БД необходимо.
С 1-3 согласен без комментариев.
 
Старый 22.06.2010, 15:37   #24   
Moderator
 
Аватар для mexx
 
Сообщений: 2,261
Регистрация: 21.01.2004

mexx вне форума Не в сети
Spectator, чем java плоха?)
 
Старый 22.06.2010, 22:17   #25   
Форумец
 
Сообщений: 60
Регистрация: 29.11.2009
Возраст: 36

Freedom111 вне форума Не в сети
php!!!!! сразу отплюнешь остальные языки! легкий, удобный!!! если что то не хватает библиотеку подсоединил и все! тот же С тока не такой дырявый
 
Старый 22.06.2010, 22:45   #26   
Out There
 
Аватар для Part!zan
 
Сообщений: 5,910
Регистрация: 13.12.2004
Возраст: 47

Part!zan вне форума Не в сети
Цитата:
Сообщение от Spectator Посмотреть сообщение
понимать ассемблер программисту просто необходимо
Было бы очень интересно, если бы ты еще рассказал, какой именно ассемблер необходимо понимать... И зачем его нужно понимать веб-программисту.
 
Старый 23.06.2010, 08:43   #27   
Форумец
 
Аватар для Михалыч)))
 
Сообщений: 6,086
Регистрация: 14.02.2007
Возраст: 41

Михалыч))) вне форума Не в сети
maxim-turaev, не буду советовать по поводу языков - уже немало написано... но тут вот какой момент еще. я так понимаю, ты поступаешь в вуз. в вузе тебя загрузят огромным множеством бесполезных на практике знаний (там это называется - мы учим вас учиться самостоятельно). но после вуза тебе придется все же работать. вот ты бы и просмотрел предложения работодателей, кому что требуется...а уж потом бы решал. мы все же не москва, не всякого спеца с руками то оторвут.
могу заметить - проще всего по воронежу(на мой скромный взгляд) устроиться 1Сникам, сертифицированным спецам или хотя бы профи. хотя как тут будет ситуация лет через 5 (когда будет нужда устраиваться на работу) - это уж хз.
Так что нужно выбрать не только интересную, но и востребованную область.
 
Старый 23.06.2010, 14:13   #28   
Форумец
 
Аватар для Spectator
 
Сообщений: 44,421
Регистрация: 27.05.2003
Возраст: 47

Spectator вне форума Не в сети
Цитата:
Сообщение от mexx Посмотреть сообщение
Spectator, чем java плоха?)
Я не говорю что она плоха, это просто инструмент. И изучить Java после С++ можно с полпинка. Почему именно С++ - потому что это классика, потому что его знать необходимо в любом случае, потому что есть такие замечательные книги как "Бьерн Страуструп. Язык программирования С++", это автор языка.
 
Старый 23.06.2010, 14:17   #29   
Форумец
 
Аватар для Spectator
 
Сообщений: 44,421
Регистрация: 27.05.2003
Возраст: 47

Spectator вне форума Не в сети
Цитата:
Сообщение от Part!zan Посмотреть сообщение
Было бы очень интересно, если бы ты еще рассказал, какой именно ассемблер необходимо понимать... И зачем его нужно понимать веб-программисту.
Любой, чтобы понимать как работает компьютер. Что такое "веб-программист" - я не очень понимаю. Кто пишет скрипты на ПыХаПы? Программированием это можно назвать только формально. Уж получать образование на ПММ/ФКН для этого точно не нужно))
 
Старый 23.06.2010, 14:19   #30   
Moderator
 
Аватар для mexx
 
Сообщений: 2,261
Регистрация: 21.01.2004

mexx вне форума Не в сети
Freedom111, толсто)
 
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind