PYTHON ОТЛИЧНЫЙ ЯЗЫК ДЛЯ ИЗУЧЕНИЯ ПРОГРАММИРОВАНИЯ. НЕТ ОПЕРАТОРНЫХ СКОБОК, НЕТ ФУНКЦИИ MAIN. В ПР / it-юмор :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор)
Подробнее
PYTHON ОТЛИЧНЫЙ ЯЗЫК ДЛЯ ИЗУЧЕНИЯ ПРОГРАММИРОВАНИЯ. НЕТ ОПЕРАТОРНЫХ СКОБОК, НЕТ ФУНКЦИИ MAIN.
В ПРОГРАММЕ МОГУТ БЫТЬ ОШИБКИ ИЗ-ЗА ЛИШНЕГО ПРОБЕЛА.
it-юмор,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор
Мне кажется, весьма хороший язык для старта это C#. Зная его синтаксис можно относительно легко потом при необходимости пересесть на плюсы или яву. Да и в скобках нет ничего плохого, тем более, что отступы тоже применяются, но лишь для удобства чтения кода, и не влияют на компиляцию. Ну и храни бог строгую типизацию, конечно же.
Зануда мод. "его синтаксис" - это, так называемый, си-подобный синтаксис.
Не думаю, что C# - хороший язык для начала, потому что он полностью-ООП. Что это за class Program? Что значит Console.WriteLine()? Либо просто копипастить без понимания сути какое-то время (привет ардуинщикам), либо объяснять новичку ООП? С другой стороны, питон тоже не лучший вариант, он с динамической типизацией. Поэтому, лучшим языком для новичка я считаю, внезапно, С++! Да, С++ просто адски сложный, если вникать в детали, но никто не требует сразу после hello-world'а разбирать шаблоны, 100500 способов инициализации и move-семантику. Но если взять небольшое подмножество, то чисто алгоритмически на нем можно писать "как на паскале". И все же стандартная библиотека есть, хоть и не такая богатая, как в питоне или C#.
всегда надо начинать с основ.
с того, как устроен микропроцессор, как хранятся и передаются данные, как обрабатываются команды внутри ЦП и т.д. и т.п.
потом переходить на ассемблер. познакомиться с ним. потом можно к С переходить начиная в hello world, параллельно разбирая все скомпилированное в дебаггере. потом уже к ооп, и только потом остается итерационный процесс набора опыта, и плюшек в виде спец конструций и т.д.
тогда будет пох, на каком ЯП.
не зная как работает железо и в какие куски кода превращает компилятор "красивые" конструкции любимого ЯП невозможно понять принципы оптимизации, использования тех или иных инструментов.
Вы почему-то пропустили изучение радиоэлектроники с пайкой пекарни своими руками из простейшей рассыпухи и изучение высшей математики. А тем, кто работает с вебом, обязательно надо еще и уметь варить оптику. Хотя, конечно, самое сложное тем кто серверные приложения пишет - им для начала нужно собрать свой ЦОД.
да конечно!
нахуй все изучать.
нахуй сварщику изучать физические свойства металлов и их совместимость, ведь можно сразу хуячить потолочный шов под водой (или в космосе)
нахуй музыканту изучать строение инструмента, музыкальную грамоту, техники игры - ведь можно сразу научиться хуячить каприччо №24
нахуй какому-нибудь спортсмену теория и техника подхода к снаряду. сразу ебашить, например, становую или присед на мастера.
прочитал какой-нибудь бложик, или, как щас модно - посмотрел видеоинструкцию и ты уже супер специализд.
вот, блять, и получаем на выходе криворуких, нихуя не понимающих "программиздов", которые хуячат тонны говнокода тупо не понимая как можно сделать более эффективно. просто дрова.
мало того, начинают с тобой спорить и доказывать - да ебаныйрооот.. вот тут же супер пупер библиотека, можно грабить корованы и т.д., а то, что эта библиотека писана теми же "индусами" похуй. как оно там работает, нахуя эти килотонны неведомой хуиты..
и получается в результате хелловорлд в 2Мб.
зато, блять, этожи новомодный йазыг программирования или фреймворк (прости господи).
но, блять, какие вида адрессации бывают мы не знаем, чем указатели от ссылок отличаются,
как передаются параметры, почему, блять, вдруг, какой-нибудь SUN 64 процессорный на ебучих запросах начинает охуевать - ни в зуб ногой.
а вот веб - вообще самое чувствительное к производительности.
это не скомпилированне приложение. это хуева туча интерпретаторв. а похуй... заебеним килотонны какого-нибудь ангулара для отрисовки кнопочки. и сверху припечатаем такими же тоннами css
это ж веб
вот и получается, вместо шва - сопли и все разваливается
вместо музыки - ебучее бренчание не в такт и не по нотам
и т.д.
так что да.. надо изучать. в том числе и высшую математику. просто, даже, для саморазвития.
"серверные приложения" - этапять.
цод можно не собирать, но нужно понимать как он работает. почему в твоем коде "все красиво", а у юзеров жопа, почему СУБД входять в клинч с твоими запросами, как организована семантика и структура данных, почему ебучий апач (или еще что) начинает сыпаться и т.д. и т.п.
не будешь этого знать - нормального, взвешанного кода не получишь.
из каких исходных посылов ты пришел к такому умозаключению?
или это максималистский клюквенный паттерн (джой + холивар) дополненный субъективно-оценочной реакцией? )
...а бармен ему и говорит
Не понимаю в чем суть занудства, как по мне, название языка недвусмысленно намекает на его связь с С, в том числе синтаксическую. И как известно, си подобный синтаксис также используется в вышеобозначенных мною языках, кроме того в PHP, Scala и прости господи JS.
Что касается плюсов в качестве стартового языка, то это будет удобно далеко не для всех. Надо очень не любить человека далекого от программирования, чтобы советовать начинать с c++.
Не вижу никаких проблем с использованием ооп без предварительной теории, раскрывающей все его принципы. На первых порах для вычисления степени через math.pow вовсе не обязательно знать, что math это класс, а pow его статический метод. И что методы бывают не статическими, а классы наследуются от Object.
Я проводил частных уроков школьникам, и практика показала, что "консоль.пиши" и "консоль.читай" куда более понятно, чем какие-то cin cout да еще и знаки меньше/больше зачем то.
Так что может с++ и неплох для изучения в рамках вузовской программы или людьми с определенным техническим бекграундом. Но абсолютному новичку проще будет начать именно с шарпа. Или scratch, если это еще ребенок.
у скалы наркоманский синтаксис ML
в пхп заметнее влияние перла, чем си
насчет (не) начинания с плюсов полностью согласен. хотел найти лекцию Александреску, где он разбирает, сколько неявных косяков и неочевидной ботвы в бездумно новичком написанном хелло-ворлде на плюсах
пока не нашел, потом мож закину
Был вынужден обучать программированию новичков без ВУЗ-овского бэкграунда. С ООП были проблемы абсолютно у всех. Это дополнительная абстракция, в которой нет необходимости.
Хороший язык для старта - это тот, который ты непосредственно будешь применять хоть для чего-то. Учить язык ради того чтобы учить язык - это самый дебильный способ учиться программировать. Еще важный фактор - количество и качество инфы по языку, а так же простая установка и настройка. C++ новичок задолбается с одними настройками и плюнет. Скобки, пробелы, типизация и прочая хрень -- абсолютно неважна в качестве критерия выбора языка.
Поэтому вопрос: нахрена новичку C#, C++, Java? Он, что на них писать-то будет?
Python проще и доступнее.
Так вот и влип в C#, спросив у знакомого кодера "какой нибудь простой язык" для спецефической софтины, которую пришлось писать самому, потому что слишком дорого загадали.
И вроде в ruby нет отступоебства,
но те кто его стал изучать на перспективу, сейчас вынуждены искать другие варианты.
Только не надо кричать - ни за что его не брошу, потому что йон хороший. Рынок не хочет руби, рынок хочет питон: https://www.tiobe.com/tiobe-index/
Это печально. Я на ruby всякую general purpose фигню пишу, конверторы, консольные утильки и вот это всё. Рельсов вообще ни разу не касался. Руби сосет по скорости выполнения, но по скорости разработки и лаконичности просто one love.
Та что говорить, хотели бы - разогнали, оптимизировали и т.д.
Году где-то в 2000 словосочетание - серверный джаваскрипт - вызывал гомерический хохот.
(товарищ сталин с ума сошел, он хочет окна мышью закрывать)
А сейчас поглядите - node.js щимит жаву.
Ну он достаточно производительный для большинства задач. Тормознутость я заметил именно на задачах по конвертированию. Алгоритм написанный один-в-один на перле обрабатывал данные в 1.5-2 раза быстрее. Я кстати не думаю что питон быстрее будет. Для простой консольной утилитки это все пофигу конечно. А разгонять его пробовали, есть несколько реализаций, которые типа быстрее эталонной реализации. Есть еще Crystal, который все до 1.0 не доберется, но там пока с экосистемой сильно так себе.
Даже с комментариями и осмысленными переменными.
А он делает.
(я за автодополнение, если вдруг что)
- all space matters!
Не думаю, что C# - хороший язык для начала, потому что он полностью-ООП. Что это за class Program? Что значит Console.WriteLine()? Либо просто копипастить без понимания сути какое-то время (привет ардуинщикам), либо объяснять новичку ООП? С другой стороны, питон тоже не лучший вариант, он с динамической типизацией. Поэтому, лучшим языком для новичка я считаю, внезапно, С++! Да, С++ просто адски сложный, если вникать в детали, но никто не требует сразу после hello-world'а разбирать шаблоны, 100500 способов инициализации и move-семантику. Но если взять небольшое подмножество, то чисто алгоритмически на нем можно писать "как на паскале". И все же стандартная библиотека есть, хоть и не такая богатая, как в питоне или C#.
с того, как устроен микропроцессор, как хранятся и передаются данные, как обрабатываются команды внутри ЦП и т.д. и т.п.
потом переходить на ассемблер. познакомиться с ним. потом можно к С переходить начиная в hello world, параллельно разбирая все скомпилированное в дебаггере. потом уже к ооп, и только потом остается итерационный процесс набора опыта, и плюшек в виде спец конструций и т.д.
тогда будет пох, на каком ЯП.
не зная как работает железо и в какие куски кода превращает компилятор "красивые" конструкции любимого ЯП невозможно понять принципы оптимизации, использования тех или иных инструментов.
нахуй все изучать.
нахуй сварщику изучать физические свойства металлов и их совместимость, ведь можно сразу хуячить потолочный шов под водой (или в космосе)
нахуй музыканту изучать строение инструмента, музыкальную грамоту, техники игры - ведь можно сразу научиться хуячить каприччо №24
нахуй какому-нибудь спортсмену теория и техника подхода к снаряду. сразу ебашить, например, становую или присед на мастера.
прочитал какой-нибудь бложик, или, как щас модно - посмотрел видеоинструкцию и ты уже супер специализд.
вот, блять, и получаем на выходе криворуких, нихуя не понимающих "программиздов", которые хуячат тонны говнокода тупо не понимая как можно сделать более эффективно. просто дрова.
мало того, начинают с тобой спорить и доказывать - да ебаныйрооот.. вот тут же супер пупер библиотека, можно грабить корованы и т.д., а то, что эта библиотека писана теми же "индусами" похуй. как оно там работает, нахуя эти килотонны неведомой хуиты..
и получается в результате хелловорлд в 2Мб.
зато, блять, этожи новомодный йазыг программирования или фреймворк (прости господи).
но, блять, какие вида адрессации бывают мы не знаем, чем указатели от ссылок отличаются,
как передаются параметры, почему, блять, вдруг, какой-нибудь SUN 64 процессорный на ебучих запросах начинает охуевать - ни в зуб ногой.
а вот веб - вообще самое чувствительное к производительности.
это не скомпилированне приложение. это хуева туча интерпретаторв. а похуй... заебеним килотонны какого-нибудь ангулара для отрисовки кнопочки. и сверху припечатаем такими же тоннами css
это ж веб
вот и получается, вместо шва - сопли и все разваливается
вместо музыки - ебучее бренчание не в такт и не по нотам
и т.д.
так что да.. надо изучать. в том числе и высшую математику. просто, даже, для саморазвития.
"серверные приложения" - этапять.
цод можно не собирать, но нужно понимать как он работает. почему в твоем коде "все красиво", а у юзеров жопа, почему СУБД входять в клинч с твоими запросами, как организована семантика и структура данных, почему ебучий апач (или еще что) начинает сыпаться и т.д. и т.п.
не будешь этого знать - нормального, взвешанного кода не получишь.
или это максималистский клюквенный паттерн (джой + холивар) дополненный субъективно-оценочной реакцией? )
...а бармен ему и говорит
Что касается плюсов в качестве стартового языка, то это будет удобно далеко не для всех. Надо очень не любить человека далекого от программирования, чтобы советовать начинать с c++.
Не вижу никаких проблем с использованием ооп без предварительной теории, раскрывающей все его принципы. На первых порах для вычисления степени через math.pow вовсе не обязательно знать, что math это класс, а pow его статический метод. И что методы бывают не статическими, а классы наследуются от Object.
Я проводил частных уроков школьникам, и практика показала, что "консоль.пиши" и "консоль.читай" куда более понятно, чем какие-то cin cout да еще и знаки меньше/больше зачем то.
Так что может с++ и неплох для изучения в рамках вузовской программы или людьми с определенным техническим бекграундом. Но абсолютному новичку проще будет начать именно с шарпа. Или scratch, если это еще ребенок.
в пхп заметнее влияние перла, чем си
насчет (не) начинания с плюсов полностью согласен. хотел найти лекцию Александреску, где он разбирает, сколько неявных косяков и неочевидной ботвы в бездумно новичком написанном хелло-ворлде на плюсах
пока не нашел, потом мож закину
Хороший язык для старта - это тот, который ты непосредственно будешь применять хоть для чего-то. Учить язык ради того чтобы учить язык - это самый дебильный способ учиться программировать. Еще важный фактор - количество и качество инфы по языку, а так же простая установка и настройка. C++ новичок задолбается с одними настройками и плюнет. Скобки, пробелы, типизация и прочая хрень -- абсолютно неважна в качестве критерия выбора языка.
Поэтому вопрос: нахрена новичку C#, C++, Java? Он, что на них писать-то будет?
Python проще и доступнее.
меня в школе никто никогда программированию не учил, как-то сам с бэйсиком познакомился. наверное что-то более серьёзное тогда и не осилил бы.
>Ну и храни бог строгую типизацию, конечно же.
dynamic передаёт привет и просит не забывать
но те кто его стал изучать на перспективу, сейчас вынуждены искать другие варианты.
Только не надо кричать - ни за что его не брошу, потому что йон хороший. Рынок не хочет руби, рынок хочет питон:
https://www.tiobe.com/tiobe-index/
Году где-то в 2000 словосочетание - серверный джаваскрипт - вызывал гомерический хохот.
(товарищ сталин с ума сошел, он хочет окна мышью закрывать)
А сейчас поглядите - node.js щимит жаву.
"translate_tabs_to_spaces": true,