Форум программистов, компьютерный форум, киберфорум
Теория программирования
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.66/64: Рейтинг темы: голосов - 64, средняя оценка - 4.66
0 / 0 / 0
Регистрация: 04.09.2018
Сообщений: 2

Языки программирования, какой выбрать?

04.09.2018, 23:17. Показов 15220. Ответов 175
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Решил изучать язык программирования, но вот какой?
Какие то языки сдают позиции, какие то набирают.

Хотел бы изучать то, что актуально и поможет мне в будущем.

Заранее спасибо)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.09.2018, 23:17
Ответы с готовыми решениями:

какой(какие) языки программирования начинать учить?
Доброго времени суток. Я — еще не определившийся новичок, но смутные представления имею. Хочу заниматься в будущем разработкой десктопных...

Какой род программирования выбрать?
Всем доброго времени суток. Учусь на программиста уже год, и я выбираю между web разработчиком и UI разработчиком. Что лучше и более...

Язык программирования. Какой выбрать?
Всем привет! Ребят, возник вопрос. Сразу скажу, поиск юзал, фак читал. Но, имхо, каждая ситуация индивидуальна) Начну, пожалуй, с...

175
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
26.10.2018, 19:28
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Shamil1 Посмотреть сообщение
В статье нигде не написано, что эти языки почти одинаковые. Там написано, что между ними много общего. Перечисление этого общего занимает меньше одной строки. Между страусами и пингвинами тоже много общего, но из этого нельзя сделать вывод, что страус - это почти пингвин.
Перечисленные общие возможности поддерживаются и многими другими языками - большинством скриптовых языков и даже такими языками, как C# и Haskel. Хотя, конечно, в 1974 году, на фоне языков типа Ада, Фортран и Си, можно было сказать, что у Scheme и JavaScript много общего.
Я вижу что у вас нет аргументов, как не было и вначале спора, который вы и затеяли. Сразу разъясню, что спорить - не моя цель. Я высказал свое мнение, привел аргументы, и не просто аргументы, а серьезные доводы, которые не я придумал. Вам этого недостаточно, ну что ж, это ваши проблемы. У меня нет цели вам что-то доказывать. Ответьте только на один вопрос, в каких современных языках есть функции высшего порядка, и такие чтобы были подобны лисповым. То есть не подобия ФВП, вроде делегатов в C#, а настоящие, как в Лиспах и Джаваскрипте.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Сказать мало, надо обосновать. Ссылка на статью не в счёт, так как с 1974 года ситуация с языками программирования несколько изменилась.
Шта? Может вы еще скажите, что Д.Кроуфорд был в состоянии опьянения, когда писал свою статью. Или что статья из википедии неправильная. Или что Брендон Айк не использовал Scheme в качестве примера при разработке Джаваскрипта. Если вам мало исторических фактов, и свидетельств крупных специалистов в области языков программирования, то я умываю руки, оставайтесь в своем мире.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Он достаточно сложный. Чтобы сказать, что делает код, нужно учитывать очень много факторов. Для новичка важна предсказуемость. Вместо этого он получает "глюки" в виде "необъяснимого" поведения. Для новичка важно, чтобы ошибки возникали как можно ближе к тому месту, которое нужно исправить.
Вы продолжаете создавать несущественные проблемы. Лямда-исчисление тоже может быть сложным в понимании, но при этом не существует проще концепции для формализации вычислений.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Обоснуйте.
Нет это вы обоснуйте. Я привел тезис, а вы его опровергните, если сможете конечно. Если бы смогли, то сразу привели бы факты, а пока вы продолжаете пускать пыль на воздух.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Для обучения это не важно.
Как раз таки важно. Новичкам сложно настаивать среду для разработки. Об этом свидетельствует статистика. Более 70% обучающихся спотыкаются на среде исполнения кода. В джаваскрипте среда не важна. Начинающие могут использовать браузер. Продвинутые могут использовать другую среду.
0
 Аватар для SashaRasha
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
26.10.2018, 23:01
Просто кто-то однажды разработал "node.js", а потом "nw.js". И это, явно, не потому, что в JS вложили основы Лиспа или еще там чего. Просто так исторически сложилось. Многие хорошие языки отправились в пустоту. И не потому, что в них было что-то не так, а просто потому, что не было вложено достаточно усилий в их развитие. Ну а отдать должное JS, все же надо. Хорош он
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
27.10.2018, 16:27
Цитата Сообщение от Edzard Посмотреть сообщение
Я высказал свое мнение, привел аргументы, и не просто аргументы, а серьезные доводы, которые не я придумал.
Я Вам объяснил, почему Ваши доводы несостоятельны.

Цитата Сообщение от Edzard Посмотреть сообщение
Ответьте только на один вопрос, в каких современных языках есть функции высшего порядка, и такие чтобы были подобны лисповым. То есть не подобия ФВП, вроде делегатов в C#, а настоящие, как в Лиспах и Джаваскрипте.
Например, в C#. Предположу, что во всех современных языках есть, кроме некоторых узкоспециализированных.

Цитата Сообщение от Edzard Посмотреть сообщение
Может вы еще скажите, что Д.Кроуфорд был в состоянии опьянения, когда писал свою статью.
Не скажу. Но, повторяю, что с 1974 года ситуация с языками программирования несколько изменилась.

Цитата Сообщение от Edzard Посмотреть сообщение
Или что Брендон Айк не использовал Scheme в качестве примера при разработке Джаваскрипта.
Я не знаю, что Вы подразумеваете под "использовал в качестве примера". Он взял из Scheme некоторые идеи. Но эти идеи сейчас реализованы, наверное, во всех скриптовых языках и почти во всех современных компилируемых языках. Поэтому нельзя сказать, что JavaScript похож на Scheme больше, чем другие языки.

Цитата Сообщение от Edzard Посмотреть сообщение
Если вам мало исторических фактов, и свидетельств крупных специалистов в области языков программирования, то я умываю руки, оставайтесь в своем мире.
Вы неправильно интерпретируете эти факты.

Цитата Сообщение от Edzard Посмотреть сообщение
Вы продолжаете создавать несущественные проблемы.
Проблемы, которые я описал, вполне реальные. Основная проблема - непредсказуемость. Упрощая можно описать так:
1. Ошибка возникает в одном месте, а исправлять её нужно совсем в другом. (из-за слабой типизации)
2. В общем случае, глядя на код, нельзя сказать, что он делает. (из-за неявного объявления переменных и "динамического связывания")

Цитата Сообщение от Edzard Посмотреть сообщение
Нет это вы обоснуйте. Я привел тезис, а вы его опровергните, если сможете конечно.
То есть, если Вы приведёте тезис о том, что между Землей и Марсом вокруг Солнца по эллиптической орбите вращается фарфоровый чайник, то это я должен буду его опровергнуть? А пока я этого не сделаю, Вы будете считать это доказанным фактом?

Цитата Сообщение от Edzard Посмотреть сообщение
Как раз таки важно. Новичкам сложно настаивать среду для разработки. Об этом свидетельствует статистика. Более 70% обучающихся спотыкаются на среде исполнения кода. В джаваскрипте среда не важна. Начинающие могут использовать браузер.
Напомню, то, что Вы написали "Джаваскрипт работает как в браузере, так и на сервере, а также на десктопе, в IOT устройствах, и вообще везде где только можно." Объясните, каким образом упрощает обучение то, что джаваскрипт работает на IOT устройствах?
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
29.10.2018, 19:11
Цитата Сообщение от Shamil1 Посмотреть сообщение
Например, в C#. Предположу, что во всех современных языках есть, кроме некоторых узкоспециализированных.
В большинстве современных языков много наркомании. JavaScript был основан на Scheme, это исторический факт, как бы кому это не нравилось. Поэтому в JS функции это объекты первого класса, как и в Scheme. Они изначально были заложены. В C# нет полноценных функций как объектов, их же можно только в классах определять. ФВП в C# это не такие же объекты первого класса как в Scheme, а так называемый функциональный тип. И прикручены они сбоку, изначально их в языке не было.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Не скажу. Но, повторяю, что с 1974 года ситуация с языками программирования несколько изменилась.
И что изменилось? Все возвращается к истокам. Во всех языках принялись реализовывать фичи из функциональных языков, которым уже десятки лет. Теория языков программирования с тех пор не сдвинулась с места ни на шаг. А основы этой теории были заложены задолго до 1974 года.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Я не знаю, что Вы подразумеваете под "использовал в качестве примера". Он взял из Scheme некоторые идеи. Но эти идеи сейчас реализованы, наверное, во всех скриптовых языках и почти во всех современных компилируемых языках. Поэтому нельзя сказать, что JavaScript похож на Scheme больше, чем другие языки.
Если вы признаете, что создатели JS взяли за основы идеи из Scheme, то почему отрицаете, что JS похож на Scheme?! Где бы что не было реализовано, но среди мейнстрим языков JS ближе к Scheme и Лиспам чем другие. Если убрать Си-синтаксис и прототипы, то получится Лисп.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Проблемы, которые я описал, вполне реальные. Основная проблема - непредсказуемость. Упрощая можно описать так:
1. Ошибка возникает в одном месте, а исправлять её нужно совсем в другом. (из-за слабой типизации)
2. В общем случае, глядя на код, нельзя сказать, что он делает. (из-за неявного объявления переменных и "динамического связывания")
Для обучения это не особо важно. Тем более есть решения вроде Flow и другие. В ES6 нет связывания с this.

Цитата Сообщение от Shamil1 Посмотреть сообщение
То есть, если Вы приведёте тезис о том, что между Землей и Марсом вокруг Солнца по эллиптической орбите вращается фарфоровый чайник, то это я должен буду его опровергнуть? А пока я этого не сделаю, Вы будете считать это доказанным фактом?
Если я сейчас начну требовать обоснования от каждого вашего предложения, что вы будете делать? А если это будут делать все?! Я никому ничем здесь не обязан.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Напомню, то, что Вы написали "Джаваскрипт работает как в браузере, так и на сервере, а также на десктопе, в IOT устройствах, и вообще везде где только можно." Объясните, каким образом упрощает обучение то, что джаваскрипт работает на IOT устройствах?
Кто-то изучает электронику, и возможно хотел бы учиться писать код. Вот тут на помощь приходит Джаваскрипт. Для обучения программированию он лучше подходит чем какой-нибудь Ассемблер.
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
30.10.2018, 09:46
Цитата Сообщение от Edzard Посмотреть сообщение
В C# нет полноценных функций как объектов, их же можно только в классах определять. ФВП в C# это не такие же объекты первого класса как в Scheme, а так называемый функциональный тип.
Всё неверно.
Функции в C#- это такие же объекты первого класса, как и в Scheme. И то, что их называют методами, сути не меняет. Любому определению/использованию функции в Scheme соответствует аналогичное определение/использование из C#.

Цитата Сообщение от Edzard Посмотреть сообщение
Если вы признаете, что создатели JS взяли за основы идеи из Scheme, то почему отрицаете, что JS похож на Scheme?
Я уже объяснял. "Похож" - это относительное понятие. Если мы возьмём медведя, тигра и питона, то медведь и тигр очень похожи (у них много общих черт, которых нет у питона). Но если мы возьмём медведя, тигра и льва, то медведь и тигр совсем не похожи.
То же самое с языками программирования. Если мы возьмём Лисп, Фортран и Джаваскрипт, то Лисп и Джаваскрипт очень похожи. Если мы возьмём Лисп, Джавскрипт и <тут длинный список современных языков программирования>, то Лисп и Джаваскрипт совсем не похожи.

Цитата Сообщение от Edzard Посмотреть сообщение
Для обучения это не особо важно.
Ещё как важно. Новичок делает ошибки, а потом долго не может их найти, так как ошибка не ассоциируется с кодом, который её вызывает.
Например, орфографическая ошибка (в имени переменной) или описка (не та переменная) или пропустил один аргумент при вызове функции.
Или просто подключил библиотеки не в том порядке, и какое-то определение перекрылось. Ошибок нет, но выдаёт странный результат.

Цитата Сообщение от Edzard Посмотреть сообщение
Тем более есть решения вроде Flow и другие. В ES6 нет связывания с this.
Новичок, изучающий первый язык программирования, ничего не знает про Flow и ECMAScript. Так что это ему не поможет.

Цитата Сообщение от Edzard Посмотреть сообщение
Если я сейчас начну требовать обоснования от каждого вашего предложения, что вы будете делать?
Всё, что я написал, могу обосновать. Более того, я обычно сразу обосновываю, кроме очевидного и/или второстепенного. Вы же сделали слишком общее утверждение "этот ЯП лучше". Настолько общее, нет желания приводить контраргументы (их слишком много).

Цитата Сообщение от Edzard Посмотреть сообщение
Кто-то изучает электронику, и возможно хотел бы учиться писать код.
Я не думаю, что найдётся много людей, которые начинают изучать программирование на чайнике или холодильнике.
Новичку на первом этапе нужна одна программа. Чтобы сверху можно было написать код, нажать на кнопку и снизу увидеть результат. Позже ему понадобится бесплатная ИДЕ, для которой легко найти ответ на вопрос "как сделать".
0
C# Brain.net
 Аватар для Jlovenpk1
35 / 35 / 7
Регистрация: 21.10.2012
Сообщений: 333
Записей в блоге: 12
30.10.2018, 10:43
В правильных рука и икс-игрик - й балалайка(с)

Бери язык, который больше подходит под твои требования.

Я например, не люблю Web Dev, не нравиться мне делать сайты, первым языком, на котором я писал был C++, потом перепрыгнул на OPascal и Delphi(в силу своей простоты и легкочитаемости), с 15 года перешел полностью на C# и до сих пор доволен им.

Многие знакомые ушли в сторону Python + QT.

Выбор за тобой, что ты собираешься делать, в какой сфере разрабатывать, и что тебе ближе к сердцу

Игры? - С++, C#, Java(ходят слухи, что скоро Python, но эт слухи).
ПО - Java, C++, C#, Python + QT.
Сайты:
Html, CSS, JS - это если Front-end, красоту наводить.
PhP, Python - эт если с логикой.


Выбор за тобой
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
30.10.2018, 20:24
Цитата Сообщение от Shamil1 Посмотреть сообщение
Всё неверно.
Функции в C#- это такие же объекты первого класса, как и в Scheme. И то, что их называют методами, сути не меняет. Любому определению/использованию функции в Scheme соответствует аналогичное определение/использование из C#.
Может быть и так, я не силен в C#. Беглым взглядом прошелся по документации, и не нашел упоминаний об этом. Как я понимаю даже в функциях нужно писать бойлерплейт-код. Если так, то это похоже на наркоманию. Код ради кода. Лучший код тот, который не написан. Все таки C# далеко не functional-first язык. А JS вполне можно назвать таковым, как и любой Лисп. Если не прав, то поправьте.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Я уже объяснял. "Похож" - это относительное понятие.
Я писал, что на него удобно ложится код на Scheme, можно читать СИКП, а примеры выполнять на JS. Не нужен лишний бойлерплейт, код будет почти идентичным.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Ещё как важно. Новичок делает ошибки, а потом долго не может их найти, так как ошибка не ассоциируется с кодом, который её вызывает.
Есть линтеры, они устраняют много таких проблем. К тому же новичкам нужно учиться думать. Если за них все будет делать транслятор и IDE, то они выучатся беспомощности. Некоторые C#-программисты без Visual Studio ничего сделать не могут. У них сразу паника начинается. Возможно некоторые из них даже не понимают, что компилятор языка все лишь программа, и ее можно вызвать из консоли например.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Новичок, изучающий первый язык программирования, ничего не знает про Flow и ECMAScript. Так что это ему не поможет.
Flow ему действительно не нужен, я написал это для вас, вы же хотели типизированный JS. ES6 не секретная технология. Всех давно обучают сразу на ES6. В документации все про это написано, и книг полно, и других ресурсов вроде learn.javascript.ru. Гораздо сложнее найти спецификацию C# 7.0, ее попросту не существует в природе. Есть какие-то драфты, но все таки это показатель незрелости, несерьезности даже. В JS с такого нет, он имеет крупнейшее сообщество, крупнейший репозиторий пакетов, крупнейшую базу знаний.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Я не думаю, что найдётся много людей, которые начинают изучать программирование на чайнике или холодильнике.
Новичку на первом этапе нужна одна программа. Чтобы сверху можно было написать код, нажать на кнопку и снизу увидеть результат. Позже ему понадобится бесплатная ИДЕ, для которой легко найти ответ на вопрос "как сделать".
В этом JS снова выигрывает. Для него не нужно даже транслятора. Он уже установлен на любом компьютере по умолчанию. Это браузер. И электронику изучают, и дети, и не только. И снова подчеркну, что для них было бы лучше писать код для этой электроники на JS, нежели на ASM, или Си/C++.
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
31.10.2018, 14:52
Цитата Сообщение от Edzard Посмотреть сообщение
Как я понимаю даже в функциях нужно писать бойлерплейт-код.
Не нужно.
Если хотите, можете написать несколько простых примеров использования ФВП в JavaScript, а я перепишу их на C#. Будет выглядеть примерно так же. А если переписать на функциональный язык (например, F# или Haskel), то будет выглядеть гораздо лучше, чем на JavaScript.

Цитата Сообщение от Edzard Посмотреть сообщение
Есть линтеры, они устраняют много таких проблем.
Цитата Сообщение от Edzard Посмотреть сообщение
В этом JS снова выигрывает. Для него не нужно даже транслятора. Он уже установлен на любом компьютере по умолчанию. Это браузер.
Я вижу тут противоречие.

Цитата Сообщение от Edzard Посмотреть сообщение
ES6 не секретная технология. Всех давно обучают сразу на ES6.
В данной теме Вы советовали изучать JavaScript. В ответах на запросы по JavaScript упоминаний о ECMAScript тоже нет. Вряд ли новичок найдёт информацию о нём.
Кроме того, ECMAScript, решая какие-то проблемы JavaScript, вносит свои собственные. Например, перевод строки использовать необязательно, но он может "непредсказуемо" (для новичка) поменять смысл выражения. Непредсказуемость (и плавающие глюки) - главный враг новичка.

Цитата Сообщение от Edzard Посмотреть сообщение
Гораздо сложнее найти спецификацию C# 7.0, ее попросту не существует в природе.
Есть официальная спецификация C# 5. Майкрософт подготовил неофициальную спецификацию C# 6 (предложение для ECMA), но ECMA пока тормозит. То есть, отсутствие спецификации не указывает на проблему языка. Даже наоборот - показывает, что язык постоянно развивается (и это большой плюс).

Цитата Сообщение от Edzard Посмотреть сообщение
В этом JS снова выигрывает. Для него не нужно даже транслятора. Он уже установлен на любом компьютере по умолчанию. Это браузер.
Набирать текст в блокноте и потом запускать его в браузере - не лучший вариант для новичка. Лучше за 5-10 минут скачать и установить программу типа DrRacket, а дальше наслаждаться предоставляем ею удобствами (подстветка синтаксиса, запуск одной кнопкой и т.д.).
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
31.10.2018, 15:16
Цитата Сообщение от Edzard Посмотреть сообщение
Это распространенная ошибка новичков, искать "актуальные языки". Программирование это не языки, программирование это алгоритмы, архитектура ПО, архитектура ЭВМ, понимание как компьютер и транслятор языка работают изнутри. Языки по внешним признакам отличаются только синтаксисом. Синтаксис это правила написания букв, чтобы транслятор языка понял, что это ключевые слова для его языка. Изучить синтаксис любого языка не составляет труда, но это не научит программировать. Поэтому неважно какой язык выбирать вначале, все равно изучение только синтаксиса ничего не даст.
С этим я согласен.

Цитата Сообщение от Edzard Посмотреть сообщение
Самый лучший вариант, это выбрать простой язык, вроде JavaScript. Он хоть и простой, но очень мощный, и к тому же позволяет программировать и в браузере, и на сервере. То есть на нем можно написать и внешнюю часть сайта, и внутреннюю невидимую пользователю, а также системные программы, и многое другое. На сегодняшний день JavaScript наиболее универсальный язык, и к тому же самый распространенный.
А вот с этим я категорически не согласен.
С чем Вы сравниваете? Сколько языков Вы изучили за последние 10 лет, чтобы утверждать, что JavaScript удобнее остальных?
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
31.10.2018, 21:36
Цитата Сообщение от Shamil1 Посмотреть сообщение
С чем Вы сравниваете? Сколько языков Вы изучили за последние 10 лет, чтобы утверждать, что JavaScript удобнее остальных?
Что значить изучить язык? Опыт знакомства у меня есть с различными языками. В том числе с такими как Haskell, OCaml, Erlang, Clojure. Из мейнстрим языков я знаком почти со всеми. На основе этого опыта я сделал вывод, что JS для новичков наиболее удобен в обучении. Если не брать во внимание язык, то одна только экосистема чего стоит, там есть все что только можно придумать.

Добавлено через 48 минут
Цитата Сообщение от Shamil1 Посмотреть сообщение
Не нужно.
Это хорошо. Но все таки в этом языке как и в Java необходимо писать бойлерплейт.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Если хотите, можете написать несколько простых примеров использования ФВП в JavaScript, а я перепишу их на C#.
Пожалуй я лучше почитаю документацию по C#, подтяну свои знания о нем. Может на счет него я и не прав отчасти. Но все же так называемые ООП языки, такие как C# и Java имеют много лишнего. Для новичков они вообще противопоказаны.

Цитата Сообщение от Shamil1 Посмотреть сообщение
А если переписать на функциональный язык (например, F# или Haskel), то будет выглядеть гораздо лучше, чем на JavaScript.
Само собой. Но начинать обучение с них сложно для новичка.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Я вижу тут противоречие.
Есть те кто с компьютером на вы. Дети например. Они не знают что такое программирование и как исполнить код. Им не нужен ни интерпретатор/компилятор, ни линтер, ни IDE, они знают что это. При этом они могут попробовать написать строчку кода в браузере, чтобы понять что вообще такое программирование. Просто открыть туториал, и написать "Hello World".

Цитата Сообщение от Shamil1 Посмотреть сообщение
В данной теме Вы советовали изучать JavaScript.
ES6 это подмножество JS. В современных книгах и туториалах об этом написано. На MDN и learn.javascript.ру как минимум написано. Дальше можно погуглить немного. Все таки кто серьезно уже хочет обучаться должны этому учиться. За них этого никто не сделает.
0
 Аватар для SashaRasha
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
01.11.2018, 08:56
Цитата Сообщение от Edzard Посмотреть сообщение
На основе этого опыта я сделал вывод, что JS для новичков наиболее удобен в обучении.
Удобен? Может быть. Но лучший ли это вариант? Мне вот изначально хотелось копать в глубину. Желание понять как бегают нули и единицы для меня было важнее всяких удобств. И только осознав суть как и где что-то происходит, на меня снисходило спокойствие и удобство. Какая разница мне какой язык описывает мои желания? Я лишь хочу понимать то, что я делаю. Да, и успокоит ли меня знание JS? Удовлетворит ли мою жажду просвещения? Все серьезные проекты пишутся на разных языках. Язык - это лишь инструмент. А программирование - это наука!
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
01.11.2018, 10:08
Цитата Сообщение от Edzard Посмотреть сообщение
Вот тут на помощь приходит Джаваскрипт. Для обучения программированию он лучше подходит чем какой-нибудь Ассемблер.
Бредятина полнейшая..
0
 Аватар для PahomUbuntu
5 / 7 / 0
Регистрация: 15.10.2018
Сообщений: 90
01.11.2018, 11:09
Цитата Сообщение от griffon88 Посмотреть сообщение
По сабжу, рекомендовал бы сразу начинать с C#.
Согласен с этим ("плюсик" посту уже поставил). Но никто не гарантирует, что всё будет легко и просто. А если хотите учить максимально простой и лёгкий язык, то начните с бейсика.
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
01.11.2018, 11:56
Цитата Сообщение от Edzard Посмотреть сообщение
Но все таки в этом языке как и в Java необходимо писать бойлерплейт.
Я же говорю, что не нужно. Ничего лишнего.
Пространства имён лишними не являются. Их отсутствие в JavaScript является большим недостатком и приводит к проблемам (например, результат работы кода может измениться при подключении новой библиотеки).
Функция Main лишней не является. В JavaScript даже больше придётся написать, чтобы получить возможность запускать программу с разными входными параметрами.
Остальное всё так же, как в JavaScript.

Цитата Сообщение от Edzard Посмотреть сообщение
На основе этого опыта я сделал вывод, что JS для новичков наиболее удобен в обучении.
Чем удобней? Конкретно В Вашем случае.

Обычно новый язык я изучаю по книге. В самом начале книге есть что-то типа "пойдите туда-то, скачайте и установите такую-то программу". Удобство изучения языка зависит от удобства/простоты/актуальности этой программы.
Например:
Clojure: Есть Clojure REPL. Код писать в текстовом редакторе, компилировать вручную, запускать из командной строки. Неудобно.
Haskel: Есть WinGHCI. Код приходится писать в текстовом редакторе, но программа сама его скомпилирует и запустит. Гораздо удобнее.
Scheme: Есть DrRacket. Всё автоматизировано. Удобно.
Common Lisp: Есть LispIDE, но нужно знать Emacs. Лично для меня вообще неудобно. Из-за этого я не знаю Common Lisp.
C#/F#: Есть LINQPad. Как и в DrRacket всё автоматизировано. Плюс добавление недостающих директив using одним кликом. Плюс поиск и установка NuGet пакетов в несколько кликов. Плюс супер-функция Dump. Очень удобно.

Второй аспект - наличие стандартных библиотек для стандартных действий.

Третий аспект - актуальность и качество информации в интернете. Кстати, из-за этого плохо начинать с C++ или Java.

Цитата Сообщение от Edzard Посмотреть сообщение
Если не брать во внимание язык, то одна только экосистема чего стоит, там есть все что только можно придумать.
Экосистемой Вы называете свалку плохого и/или устаревшего кода в интернете?

Цитата Сообщение от Edzard Посмотреть сообщение
Но начинать обучение с них сложно для новичка.
Это заблуждение. Функциональные языки более просты в понимании для новичка.

Например, есть задача "вывести на экран сумму квадратов чётных чисел от 1 до 10". Код на Haskel практически один в один повторяет текст задачи:
Haskell
1
main = print $ sum $ map (^2) $ filter even [1..10]
Просто и понятно любому человеку, не знакомому с программированием.
Код на императивном языке использует цикл, изменение счётчика, ячейку памяти для накопления результата. Всё это неестественно, а потому сложно и непонятно. Но после нескольких лет наступает профессиональная деформация образа мышления. После этого нормальное, естественное мышление становится непривычным. Из-за этого изучать функциональные языки даже сложнее, чем совсем без опыта программирования. Поначалу продолжаешь мыслить циклами. И пишешь теми же циклами, только заменяя их рекурсией. Отсюда миф о том, что функциональные языки более сложные, чем императивные.

Цитата Сообщение от Edzard Посмотреть сообщение
Пожалуй я лучше почитаю документацию по C#, подтяну свои знания о нем.
Возможно, имеет смысл погуглить статьи на тему "что нового в такой-то версии".
Есть локальные функции (объявление функции внутри другой функции), анонимные функции, замыкания. Функция может возвращать несколько значений. Функции можно собирать и компилировать во время исполнения. На уровне класса можно объявить статическую (обычную "функциональную") функцию. Можно сам класс объявить статическим, тогда по сути он не будут отличаться от пространства имён.
Переменная может иметь тип "функция". Пример переменной, содержащей рекурсивную функцию:
C#
1
2
3
4
5
6
7
void Main()
{
    Func<int, int> factorial = null;
    factorial = n => n > 0 ? n * factorial(n - 1) : 1;
    int x = 5;
    Console.WriteLine($"Factorial({x}) = {factorial(x)}.");
}
Цитата Сообщение от Edzard Посмотреть сообщение
Есть те кто с компьютером на вы. Дети например. Они не знают что такое программирование и как исполнить код. Им не нужен ни интерпретатор/компилятор, ни линтер, ни IDE, они знают что это. При этом они могут попробовать написать строчку кода в браузере, чтобы понять что вообще такое программирование. Просто открыть туториал, и написать "Hello World".
Создать html файл, написать в нём код и запустить в браузере сложнее, чем написать код в окне и нажать кнопку "Выполнить".
Если же Вы имеете ввиду наличие кнопки "запустить этот код" в туториалах, то это есть и для других языков, включая C#: https://www.tutorialspoint.com... online.php
Дети, кстати, адаптируются очень быстро. Найти, скачать и установить приложение или написать и запустить программу в специализированном приложении не вызывает никаких сложностей даже у первоклассника.
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
01.11.2018, 22:40
Цитата Сообщение от Shamil1 Посмотреть сообщение
Остальное всё так же, как в JavaScript.
Я говорю в общем о коде. Если написать одинаковые приложения на JS и C#, то кода на C# будет больше и значительно.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Clojure: Есть Clojure REPL. Код писать в текстовом редакторе, компилировать вручную, запускать из командной строки. Неудобно.
Вы просто привыкли к Windows way и поэтому считаете командную строку неудобной. Для вас она может и неудобна, но для других наоборот. В командной строке можно очень эффективно работать, намного эффективней чем в GUI. И REPL одна из самых крутых фич Лиспов.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Экосистемой Вы называете свалку плохого и/или устаревшего кода в интернете?
Вы наверное до сих пор плагины на jQuery скачиваете? Про NPM слышали? Тот же Babel крутейшая штука. Ни в одном языке такой штуки нет.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Это заблуждение. Функциональные языки более просты в понимании для новичка.
Я не писал, что они сложны для понимания. Вы перевернули все. Они сложны потому что мало информации, ничтожно малое сообщество, экосистемы языков скудные и протухшие, никто ничего толкового не пишет, либо все уже устарело. Мало примеров готового кода. Не хелло ворлдов, а готовых приложений.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Код на императивном языке использует цикл, изменение счётчика, ячейку памяти для накопления результата.
Итеративный процесс можно построить без циклов, на одних функциях, на любом языке. И я сам приверженец ФП языков если что. Не нужно мне пропагандировать ФП.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Есть локальные функции (объявление функции внутри другой функции), анонимные функции, замыкания. Функция может возвращать несколько значений. Функции можно собирать и компилировать во время исполнения. На уровне класса можно объявить статическую (обычную "функциональную") функцию. Можно сам класс объявить статическим, тогда по сути он не будут отличаться от пространства имён.
Переменная может иметь тип "функция". Пример переменной, содержащей рекурсивную функцию:
Я это знаю. Просто у меня стойкое непринятие Java-подобных языков. Как бы их не улучшали, родовую травму это не исправит.

Добавлено через 6 минут
Цитата Сообщение от SashaRasha Посмотреть сообщение
Мне вот изначально хотелось копать в глубину. Желание понять как бегают нули и единицы для меня было важнее всяких удобств.
Достаточно прочитать книгу вроде "Код. Тайный язык информатики". Ассемблер попробовать можно для общего развития, но это не программирование. Программирование это абстракции, а в Ассемблер их нет.

Цитата Сообщение от SashaRasha Посмотреть сообщение
Какая разница мне какой язык описывает мои желания? Я лишь хочу понимать то, что я делаю.
Язык влияет на мышление. Если вы пишите на Ассемблере, то вы мыслите как процессор. Потом это когнитивное искажение уже не исправить. Вы становитесь неспособны строить абстракции. Код пишут для людей, поэтому и языки должны быть для людей. Программирование и состоит в том, чтобы заставить компьютер понимать человеческий язык, а не спускаться на его уровень. Эта фраза написана в СИКП.

Цитата Сообщение от SashaRasha Посмотреть сообщение
Язык - это лишь инструмент. А программирование - это наука!
Если прочтете мое первое сообщение, то увидите что я написал тоже самое.

Добавлено через 8 минут
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Бредятина полнейшая..
Обосновать вы конечно не можете. Ассемблер язык для компьютера. Когда еще не было высокоуровневых языков код писали на нем. И много ли они написали?! Код на Лиспе был бы в 2000 раз короче. Такое заявление сделал небезызвестный Алан Кей, и я с ним полностью согласен. В Ассемблере вы не можете создавать высокоуровневые абстракции, чтобы можно было потом из них строить сложную систему. Вам приходится писать код императивно. Это не программирование, а извращение. Все равно что обрабатывать огромные массивы данных на счетах. Никакого апгрейда мышления это не дает. Это равносильно тому, что ездить на деревянных колесах по асфальту, или переплывать океан на весельной лодке.
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
02.11.2018, 01:19
Цитата Сообщение от Edzard Посмотреть сообщение
Я говорю в общем о коде. Если написать одинаковые приложения на JS и C#, то кода на C# будет больше и значительно.
Не верю.

Цитата Сообщение от Edzard Посмотреть сообщение
Вы просто привыкли к Windows way и поэтому считаете командную строку неудобной. Для вас она может и неудобна, но для других наоборот. В командной строке можно очень эффективно работать, намного эффективней чем в GUI. И REPL одна из самых крутых фич Лиспов.
По-моему, Вы не о том говорите.
В ИДЕ писать удобнее, чем в текстовом редакторе.
Нажать одну кнопку удобнее, чем переключаться в командную строку, набирать команду для компиляции и потом команду для запуска.
В REPL удобно что-нибудь быстренько протестировать, а писать большую программу неудобно. У F#, кстати, есть REPL.

Цитата Сообщение от Edzard Посмотреть сообщение
Вы наверное до сих пор плагины на jQuery скачиваете? Про NPM слышали?
При чём здесь NPM, если речь идёт об обучении языку и о примерах кода, которые новичок найдёт в Интернете. При этом он не умеет отличать плохие примеры от хороших. Проблема не в отсутствии хорошего кода, а в наличии большого количества плохого. Такая же проблема у Java и C++.

Цитата Сообщение от Edzard Посмотреть сообщение
Тот же Babel крутейшая штука. Ни в одном языке такой штуки нет.
Babel нужен для решения определённых проблем. Если в другом языке нет подобных проблем, то он не нужен.

Добавлено через 2 минуты
Цитата Сообщение от Edzard Посмотреть сообщение
Мало примеров готового кода. Не хелло ворлдов, а готовых приложений.
Зачем новичку код готовых приложений? Он всё равно ничего в них не поймёт.
Кроме того, большое количество кода не является преимуществом, если большая часть этого кода плохая. Ведь новичок не может отличить хороший код от плохого.
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
02.11.2018, 03:18
Цитата Сообщение от Shamil1 Посмотреть сообщение
Не верю.
Ваше право.

Цитата Сообщение от Shamil1 Посмотреть сообщение
В ИДЕ писать удобнее, чем в текстовом редакторе.
Чем в блокноте вы наверное имели ввиду. Нормальный редактор с плагинами ничем не уступает. А даже превосходит, в скорости работы и гибкости. Голая Visual Studio весит 1-2 Гб, а с библиотеками может доходить до 40! Гб. Можно представить как быстро и продуктивно она будет работать.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Нажать одну кнопку удобнее, чем переключаться в командную строку, набирать команду для компиляции и потом команду для запуска.
Существуют консоли прямо в редакторах. Пока вы нажимаете кнопки и ждете, опытный Vim-ер сделает в 5 раз больше полезной работы. И вообще то существуют инструменты автоматизации процедур сборки и запуска, Make например. С ним можно сложные процедуры вроде поднятия контейнеров и настройки окружений свести в нескольким коротким командам. IDE такого не позволяет делать. Консоль всегда будет быстрее, гибче, и удобнее.

Цитата Сообщение от Shamil1 Посмотреть сообщение
В REPL удобно что-нибудь быстренько протестировать, а писать большую программу неудобно. У F#, кстати, есть REPL.
Это вы так думаете, другие думают иначе. Есть целая философия под названием REPL Driven Development. Разработка на Лиспах вообще самая удобная и быстрая, в том числе благодаря реплу.

Цитата Сообщение от Shamil1 Посмотреть сообщение
При чём здесь NPM, если речь идёт об обучении языку и о примерах кода, которые новичок найдёт в Интернете.
В современной разработке принято пользоваться пакетными менеджерами. Это помогает в том числе избегать плохого кода. Не нужно искать в интернете код, для этого есть специальные места, гитхаб например. Там есть рейтинг как минимум. Если библиотеку используют большое количество людей в продакшене, значит код в ней должен быть приемлемого качества. А вообще загляните в код GCC или ядра Линукс, думаете там везде хороший код.

Цитата Сообщение от Shamil1 Посмотреть сообщение
При этом он не умеет отличать плохие примеры от хороших.
И что с ним случиться из-за этого? Чтобы понять как писать хорошо, нужно понять как писать плохо. Если же сразу видеть только хороший код, не поймешь почему он хороший. Нужно понять проблематику, то есть почему такой то код плохой. Это правильный путь, если смотреть только как делать правильно, то станешь обезьяной, которая только умеет повторять.

В NPM достаточно отличных библиотек. И еще раз повторю, что NPM сейчас это крупнейший репозиторий с кодом. Раньше Джаву любили за то, что в репозитории Maven можно найти библиотеки на все случаи жизни. Сейчас в NPM как минимум в 2 раза больше библиотек.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Babel нужен для решения определённых проблем. Если в другом языке нет подобных проблем, то он не нужен.
Да, он решает проблемы. Но еще дает большие возможности. Вот вы не можете писать на C# 8.0 прямо сейчас, а JS разработчики могут писать на каком-нибудь ES2019.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Зачем новичку код готовых приложений? Он всё равно ничего в них не поймёт.
Смотря какой новичек. Новички растут, захотят увидеть как устроено готовое веб-приложение например. На JS их огромное количество. И важно что много живых проектов.

Цитата Сообщение от Shamil1 Посмотреть сообщение
Кроме того, большое количество кода не является преимуществом, если большая часть этого кода плохая. Ведь новичок не может отличить хороший код от плохого.
Является. Если много кода, значит много разработчиков, большое сообщество, легче обучаться, много работы, много возможностей, всего много. На C# пишет много школьников, плюс давит наследие Windows (неспособность запустить код из консоли), наследие проприетарной технологии (непринятие опенсоурс идеологии), из этого можно сделать вывод, что большая часть кода на C# плохая.

Вот пример https://github.com/reactioncommerce/reaction, код я не смотрел, но посмотрел рейтинг на гитхабе. Скоро этот проект догонит по звездам Spree написанный на Rails. По коммитам 11k против 18k у Spree. То есть тоже не далеко. Но Spree пишут уже много лет. Есть что-то подобное на C#? Если и есть, то скорее всего код там будет ужасный.
0
 Аватар для SashaRasha
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
02.11.2018, 08:19
Цитата Сообщение от Edzard Посмотреть сообщение
Программирование и состоит в том, чтобы заставить компьютер понимать человеческий язык, а не спускаться на его уровень.
"Спускаться не подниматься". Вам разве не интересно понимать что происходит в ЦП? К стати, бинарная логика присутствует даже в JS.
JavaScript
1
2
3
4
x = 0;
y = 1;
z = x & y/x;
alert(z);
В результате имеем z=0
И не забывайте, что побитовые операции выполняются быстрее. Иногда знание того, что происходит ниже, позволяет написать более продуманный код. Верхний уровень, безусловно, хорош, но кому-то надо ковыряться в кишках. Особенно, когда речь заходит об ИБ.
0
131 / 146 / 19
Регистрация: 19.02.2017
Сообщений: 619
02.11.2018, 08:35
Цитата Сообщение от SashaRasha Посмотреть сообщение
Вам разве не интересно понимать что происходит в ЦП? К стати, бинарная логика присутствует даже в JS.
Было интересно когда я не понимал в этом ничего. Когда изучил данную тему интерес отпал сам собой. Гораздо интересней писать высокоуровневый код. Советую вам почитать СИКП если не читали. Там кстати в 5 главе реализуют регистровую виртуальную машину.

Добавлено через 8 минут
Цитата Сообщение от SashaRasha Посмотреть сообщение
Иногда знание того, что происходит ниже, позволяет написать более продуманный код. Верхний уровень, безусловно, хорош, но кому-то надо ковыряться в кишках. Особенно, когда речь заходит об ИБ.
Но как это помогает строить абстракции? Чтобы написать интерпретатор например, вообще не нужно мыслить в таких низкоуровневых операциях.
0
Модератор
Эксперт функциональных языков программирования
3141 / 2289 / 469
Регистрация: 26.03.2015
Сообщений: 8,912
02.11.2018, 09:49
У меня складывается впечатление, что Вы забыли, о чём идёт дискуссия.

Цитата Сообщение от Edzard Посмотреть сообщение
Чем в блокноте вы наверное имели ввиду. Нормальный редактор с плагинами ничем не уступает. А даже превосходит, в скорости работы и гибкости.
Вы говорите, преимущество обучения программированию на базе языка JS в том, что ничего не надо скачивать. Я говорю, что так писать неудобно. Вы говорите, что нужно скачать "нормальный редактор" и плагины к нему. Вы, пожалуйста, выберите что-нибудь одно - нужно для изучения JS что-то скачивать или не нужно.

Цитата Сообщение от Edzard Посмотреть сообщение
Голая Visual Studio весит 1-2 Гб, а с библиотеками может доходить до 40! Гб. Можно представить как быстро и продуктивно она будет работать.
Напомню, что я писал: LINQPad. Для обучения программированию вполне достаточно. И всего 22 Мб.
А о том, насколько продуктивно работает Visual Studio, лучше судить по опыту, а не по размеру библиотек, которые можно скачать.

Цитата Сообщение от Edzard Посмотреть сообщение
Пока вы нажимаете кнопки и ждете, опытный Vim-ер сделает в 5 раз больше полезной работы. И вообще то существуют инструменты автоматизации процедур сборки и запуска, Make например.
Хочу уточнить. Вы советуете начать изучение программирования с JS или предлагаете предварительно изучить Vim и Make? Боюсь, такой подход отпугнёт 99% новичков.

Цитата Сообщение от Edzard Посмотреть сообщение
Не нужно искать в интернете код, для этого есть специальные места, гитхаб например.
Ну это же полный бред! Или Вы опять не о том? У новичка возник вопрос... например, "как превратить дату в строку". Вы ему за этим на гитхаб надо лезть?

Цитата Сообщение от Edzard Посмотреть сообщение
Вот вы не можете писать на C# 8.0 прямо сейчас, а JS разработчики могут писать на каком-нибудь ES2019.
Я могу начать писать на C# 8.0, как только появится компилятор для C# 8.0. Точно так же, JS разработчики могут начать писать на каком-нибудь ES2019 не раньше, чем появится какой-нибудь транслятор для ES2019 .

Цитата Сообщение от Edzard Посмотреть сообщение
Новички растут
И перестают быть новичками.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.11.2018, 09:49

Какой язык программирования выбрать?
Какой язык программирования выбрать? Хочу научиться ООП, думаю о какихнибудь средствах с визуализацией UML типа RationalRose. Раньше...

Какой язык программирования выбрать?
Приветствую, господа кодеры, у меня к вам несколько вопросов. Недавно я загорелся идеей создать какую-нибудь простенькую онлайн игру,...

Какой язык программирования выбрать ?
привет всем, надеюсь подружимся!)) Я новичок, хочу написать программу для вконтакте. Суть ее в том, чтоб искать людей по интересам,...

Какой язык программирования выбрать и др. вопросы
Всем доброго времени суток! Предыстория: Мне тут работу предложили, а именно разработать нечто наподобии собственной БД и системы...

Какой язык программирования выбрать для разработки собственного ЕРП решения?
Всем привет! Решили написать в нашей компании собственное ЕРП решение, сейчас выбираем какой язык/технологию использовать. Архитектура...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru