» Программирование>Срочная помощь программистов и тема для флуда по тематике раздела
Spectator 21:59 09.03.2014
Сообщение от X0R: Spectator, то что ты описал - называется MVP, но ребята наверное не захотели поддерживать 3 интерфейса.
так точно (это я насчет MVP). стремление к минимизации количества платформозависимых строк - глупость начинающих, о чем я уже писал.
функционал, касающийся интерфейса, обычно меняется крайне незначительно. я в черепахе раз перед увольнением неделю последнюю рабочую просматривал код проекта, над которым трудился пару лет... с огромным удивлением обнаружил процентов 10 функций, которые не менялись вообще ни разу... рядом с теми в которых были яростные изменения, и каждая строка - в своей вымученной ревизии.
все эти writeonly функции касались интерфейса, а те, вымученные, - функционала. и я тогда окончательно осознал что все эти извращения с кроссплатформенностью - абсолютно бессмысленны. продублировать код интерфейса ближе к концу под нужные платформы - это дни или недели в зависимости от размера проекта и практического знания платформ... а вот постоянное тестирование под все платформы на этапе разработки, и соблюдение принципов, обход косяков, и, главное, в итоге один кривой интерфейс, который не будет родным ни для одной платформы.
т.е. дороже и хуже. зато модно и технично, ага.
[Ответ]
Hopkroft 15:17 23.03.2014
manifest, X0R, народ, а что вы скажете об Erlang как о выборе языка для обучения программированию?
Ну или Perl какой -нибудь?
[Ответ]
X0R 17:21 23.03.2014
Hopkroft, язык должен обладать простым синтаксисом, желательно быть статически типизированным, чтобы дети понимали что разные данные обрабатываются по разному, обладать конструкциями для организации различных циклов (for с указанием всех параметров, а не foreach), поэлементным доступом к массивам (и многомерным тоже) и строкам.
C#, C (без плюсов), Java, Python.
Я бы отдал предпочтение C подобному синтаксису.
[Ответ]
silly 17:51 23.03.2014
Щас опять будет срач на десять страниц. Обучения кого и чему? Мы все чему-то все время учимся.
[Ответ]
Spectator 17:54 23.03.2014
Сообщение от silly:
Щас опять будет срач на десять страниц. Обучения кого и чему?
Сообщение от Hopkroft:
Преподавать в школе основы программирования на этих языках.
Hopkroft, тебе хочется посраться на выходных? в пятницу надо было начинать, сегодня все уже трезвые. Erlang — функциональный язык программирования со строгой динамической типизацией, предназначенный для создания распределённых вычислительных систем. Каким боком этот специализированный язык может являться средством обучения основным канонам программирования? Perl я знаю уже без вики что из себя представляет, обучать с его помощью программированию может предложить только человек, который не имеет ни малейшего понимания - что это такое.
[Ответ]
Hopkroft 19:15 23.03.2014
Сообщение от Spectator:
Hopkroft, тебе хочется посраться на выходных? в пятницу надо было начинать, сегодня все уже трезвые.
Какого фига ты так общаешься? Я задал вопрос, и хотел услышать мнение. Как ты мог увидеть, я не придерживаюсь какой-то линии. Просто интересно мнение местных программистов. Так что если у кого-то весенний токсикоз или он синячил на выходных, то это его половые трудности. Ферштейн?
Сообщение от Spectator: Erlang — функциональный язык программирования со строгой динамической типизацией, предназначенный для создания распределённых вычислительных систем. Каким боком этот специализированный язык может являться средством обучения основным канонам программирования? Perl я знаю уже без вики что из себя представляет, обучать с его помощью программированию может предложить только человек, который не имеет ни малейшего понимания - что это такое.
Вот это уже по делу, твою позицию я понял.
[Ответ]
Spectator 19:20 23.03.2014
Сообщение от Hopkroft:
Какого фига ты так общаешься?
я совершенно дружелюбно это спрашиваю, поскольку не вижу ровным счетом никакого иного смысла в вопросе))) ты берешь пару языков, которые совершенно и никаким боком не могут являться основой для изучения программирования. и задаешь свой вопрос. почему ты взял именно эти языки? если тебе хочется найти подходящие - есть смысл начать со всех языков, какой смысл начинать разговор с языков, которые ЗАВЕДОМО не подходят.
Сообщение от Hopkroft:
Вот это уже по делу, твою позицию я понял.
Сообщение от Spectator:
я совершенно дружелюбно это спрашиваю, поскольку не вижу ровным счетом никакого иного смысла в вопросе))) ты берешь пару языков, которые совершенно и никаким боком не могут являться основой для изучения программирования. и задаешь свой вопрос. почему ты взял именно эти языки? если тебе хочется найти подходящие - есть смысл начать со всех языков, какой смысл начинать разговор с языков, которые ЗАВЕДОМО не подходят.
Мне стало интересно может ли функциональный язык быть использован для обучения. Ты лишь написал что он используется для распределённых систем. Однако и на тех же C много чего написано, но ведь их можно использовать для обучения.
Пока-что каких то серъёзных аргументов ты не выдвинул. Так что радоваться нечему. А слова, я познал всё в мире разработки, может любой "клавиатурный воин" написать[Ответ]
Spectator 19:40 23.03.2014
Сообщение от Hopkroft:
Мне стало интересно может ли функциональный язык быть использован для обучения.
есть мысль что для обучения надо использовать языки, созданные для обучения...
Basic, Pascal.
потом, с них, переходить на общие языки, такие как С++.
а потом уже можно изучать строго специализированные.
ты, зачем то, хочешь начать изучать корову с хвоста... одного из сотни её хвостов... о чем я тебе уже не разговорил.
[Ответ]
Hopkroft 19:49 23.03.2014
Spectator, твоё мнение понятно.
но ты можешь просто понаблюдать за общением, о чём я тебе не раз говорил.
[Ответ]
silly 20:38 23.03.2014
Сообщение от Hopkroft:
Мне стало интересно может ли функциональный язык быть использован для обучения.
Раз уж на то пошло, сюда обычно включаются:
1. Диалекты лиспа: common lisp, scheme, logo, clojure и т. д.;
2. Диалекты ML c eager evaluation: sml, ocaml, F#;
3. Производные от ML языки c lazy evaluation: miranda, haskell;
4. Созданные разными извращенцами путем извращений c Prolog'ом: erlang, mercury.
Похожи эти группы друг на друга гораздо меньше, чем си с паскалем. Для школьников реально большая часть не годится.
[Ответ]
Spectator 21:10 23.03.2014
Сообщение от Hopkroft: Spectator, твоё мнение понятно.
но ты можешь просто понаблюдать за общением, о чём я тебе не раз говорил.
я и наблюдаю и участвую, почему мне только наблюдать то? твое мнение мне тоже понятно. всем молчать теперь, что ли? [Ответ]
Hopkroft 22:08 23.03.2014
Сообщение от silly:
Раз уж на то пошло, сюда обычно включаются:
1. Диалекты лиспа: common lisp, scheme, logo, clojure и т. д.;
Похожи эти группы друг на друга гораздо меньше, чем си с паскалем. Для школьников реально большая часть не годится.
Интересно, просто если говорить за Scheme, то на хабре и других ресурсов часто дефирамбы звучат в его адрес. Что мол книга Структу́ра и интерпрета́ция компью́терных програ́мм, в которой использован этот язык, просто обязана быть первой книгой для обучения программированию.
[Ответ]
Spectator 22:34 23.03.2014
Сообщение от Hopkroft:
Интересно, просто если говорить за Scheme, то на хабре и других ресурсов часто дефирамбы звучат в его адрес. Что мол книга Структу́ра и интерпрета́ция компью́терных програ́мм, в которой использован этот язык, просто обязана быть первой книгой для обучения программированию.
из этого, безусловно, следует что всё что всеми говорится - одинаковый бред))) мысль ясна и понятна, но несколько нигилистична) о чем я тебе повторяю уже в 100500 раз))
[Ответ]
silly 22:39 23.03.2014
Сообщение от Hopkroft:
Интересно, просто если говорить за Scheme, то на хабре и других ресурсов часто дефирамбы звучат в его адрес. Что мол книга Структу́ра и интерпрета́ция компью́терных програ́мм, в которой использован этот язык, просто обязана быть первой книгой для обучения программированию.
При всем уважении, книга все-таки входит в расчитанный на студентов курс. Да и вообще, насколько мне известно, сейчас там используется python.
[Ответ]
Hopkroft 22:46 23.03.2014
silly, я тоже что-то за Python слышал, но в книге вроде примеры на Scheme были. Такое ощущение что в последнее время пытаются ввести обучение на тех языках которые в тренде. При моём уважении к Python, слышал много нелестных слов о том что обычно в командной разработке на нём очень легко наступить на грабли из-за особенностей языка.
В 2-х словах, синтаксис крут и полон сахара, но когда пишут несколько человек, очень легко запутаться в коде.
Зачем тогда курс на нём вести?! Или преподы настолько достигли просветления, что реально могут объяснять основы разработки на нём[Ответ]
silly 22:58 23.03.2014
Сообщение от Hopkroft:
При моём уважении к Python, слышал много нелестных слов о том что обычно в командной разработке на нём очень легко наступить на грабли из-за особенностей языка.
В 2-х словах, синтаксис крут и полон сахара, но когда пишут несколько человек, очень легко запутаться в коде.
1. В институте не преподают основы командной разработки
2. В лиспе запутаться еще легче: точно такая же динамическая типизация + макросы.
[Ответ]
Hopkroft 23:06 23.03.2014
Сообщение от silly:
1. В институте не преподают основы командной разработки
Ну как бы нам что -то пытались рассказать, но как-то всё это сферично выглядело. Было дело в политехе.
Сообщение от silly:
2. В лиспе запутаться еще легче: точно такая же динамическая типизация + макросы.
Ну по поводу макросов, вспоминаю рассказ одного Явиста, который перешёл на Скалу, и восторженно рассказывал, как его радуют макросы в Scala. Хотя быть может это было самовнушение.
Неужели на деле динамическая типизация такая страшная штука. К примеру читал рассказ человека, который писал систему для проверки текста на предмет плагиата. Он говорил что со статической типизацией такие задачи решать ой как сложно.
Просто вывод такой напрашиваеться, учиться основам на языках со статической типизацией и потом переходить если оно требует того на языки с динамической типизацией [Ответ]
silly 23:19 23.03.2014
Сообщение от Hopkroft:
Ну по поводу макросов, вспоминаю рассказ одного Явиста, который перешёл на Скалу, и восторженно рассказывал, как его радуют макросы в Scala. Хотя быть может это было самовнушение.
Одно другому не мешает, чем больше продвинутых фишечек, тем больше потенциал для запутывания кода.
Сообщение от Hopkroft:
Неужели на деле динамическая типизация такая страшная штука.
Я не знаю, я просто ответил на «слышал много нелестных слов». Scheme этим людям тоже не понравится.
Сообщение от Hopkroft:
К примеру читал рассказ человека, который писал систему для проверки текста на предмет плагиата. Он говорил что со статической типизацией такие задачи решать ой как сложно.
В интернетах еще и не такое прочитать можно [Ответ]
Spectator 23:46 23.03.2014
Сообщение от Hopkroft:
К примеру читал рассказ человека, который писал систему для проверки текста на предмет плагиата. Он говорил что со статической типизацией такие задачи решать ой как сложно.
нет ничего абсолютно в этой задаче, что бы было сильно завязано на статической или динамической типизации. это вообще разные уровни, совершенно. человек, который это говорил, не разбирается ни в одном из них, равно как в промежуточных. это все равно что утверждать что орехи колоть учебником по матанализу сложнее чем "Толстым".
и я тебе это уже говорил.
[Ответ]
manifest 06:11 24.03.2014
Сообщение от Hopkroft: manifest, X0R, народ, а что вы скажете об Erlang как о выборе языка для обучения программированию?
Ну или Perl какой -нибудь?
Erlang очень простой и чистый язык, с минимальным набором сущностей в языке. Он отлично подошел бы как первый язык, но все же, сегодня, это не лучший кандидат, потому что окружение языка весьма скудное и есть проблема с доступностью информации, ее источников не так много. Все это делает его сложным для старта. С Perl мне не приходилось работать, сложилось мнение что он сложноват и не всегда интуитивно понятен. Я бы советовал для обучения Ruby, потому что это единственный язык идея которого быть понятным и простым для человека, а не оптимизированным для машины. К тому же он объектно-ориентированный, эта парадигма наиболее популярна. И уж точно не советовал отмерающие Pascal или Basic.
[Ответ]
Hopkroft 11:05 24.03.2014
Сообщение от manifest:
Erlang очень простой и чистый язык, с минимальным набором сущностей в языке. Он отлично подошел бы как первый язык, но все же, сегодня, это не лучший кандидат, потому что окружение языка весьма скудное и есть проблема с доступностью информации, ее источников не так много. Все это делает его сложным для старта. С Perl мне не приходилось работать, сложилось мнение что он сложноват и не всегда интуитивно понятен. Я бы советовал для обучения Ruby, потому что это единственный язык идея которого быть понятным и простым для человека, а не оптимизированным для машины. К тому же он объектно-ориентированный, эта парадигма наиболее популярна.
Странно, я думал что по Erlang как раз сейчас книг хоть обчитайся.
Сообщение от manifest:
И уж точно не советовал отмерающие Pascal или Basic.
Интересует нестандартный подход в обучении. Тем более не хочу эти языки сравнивать из-за холивара[Ответ]
manifest 12:11 24.03.2014
Сообщение от Hopkroft:
Странно, я думал что по Erlang как раз сейчас книг хоть обчитайся.
Книги есть, они хорошие, но достаточно общие. Не хватает литературы описывающей паттерны, подходы к решению реальных задач.
[Ответ]
Hopkroft 16:09 24.03.2014
Сообщение от silly:
В интернетах еще и не такое прочитать можно
Да вроде грамотный дядя писал. Статья про поиск плагиата. Где он рассказывал о преимуществах языков с динамической типизацией, для некоторого класса задач.
[Ответ]
aerin 16:25 24.03.2014
Hopkroft, к слову, вот все объяснение:
Сообщение от :
В качестве языка реализации был выбран Перл, что оказалось очень удачным. Ни на каком статическом компилируемом языке с их ригидностью и тормознутостью запуска решить эту задачу вообще было невозможно. Переписать готовое решение можно, а придти к нему путем многочисленных проб — никак нельзя. Ну и плюс куча отличных обкатанных библиотек.
Я как-то тоже не поверил, поэтому и поднял данную тему[Ответ]
silly 21:14 24.03.2014
Сообщение от Hopkroft:
Да вроде грамотный дядя писал. Статья про поиск плагиата. Где он рассказывал о преимуществах языков с динамической типизацией, для некоторого класса задач.
Хм… Здесь и попытки что-либо обосновать нет, так просто небольшой вброс попутно основному повествованию.
[Ответ]