Перейти к содержанию
АнимеФорум

Рекомендуемые сообщения

Опубликовано
А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программу

А мужики-то не знают... Ничего сложного, на самом деле, только трудоемко. Когда быстродействие или потребление памяти это оправдывало (например, игры на всяких спектрумах, 8086, да даже иногда и 386), вполне себе писали.

  • Ответов 232
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Опубликовано

Вы же не против, если я вклинюсь в беседу и изложу свое скромное мнение?

Для хорошего программиста чем больше возможностей тем лучше (очевидно ведь) а для плохого программиста это большое количество "ям" в которые он неизбежно провалится, вот плохие программисты и поливают грязью С++, чтобы оправдать свою неполноценность. Поэтому программирование преподают, используя паскаль, у него жесткий синтакс, чтобы ученики не "падали в ямы".

А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программу, только специализированные вставки/модули.

Хорошему программисту достаточно того, что есть. Чем больше ограничений, тем тщательней ты начинаешь продумывать задачу, и тем лучше получается конечный результат. Или не получается вообще, если в ходе анализа задачи приходишь к выводу, что она поставлена неверно. Богатство развращает, знаете ли.

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

А по поводу ассемблера, здесь с вами определённо не согласятся.

 

Сам я любитель интерпретируемых языков (ленивый страшно), в особенности питона, хотя в последнее время с интересом поглядываю на JavaScript. Никто с node-js не игрался? Выглядит довольно перспективно.

Опубликовано (изменено)
Поэтому программирование преподают, используя паскаль, у него жесткий синтакс, чтобы ученики не "падали в ямы".

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

Инертность.

А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программу, только специализированные вставки/модули.

а как вам ОС, полностью написанная на asm?

Изменено пользователем Davinel (смотреть историю редактирования)
Опубликовано

Я и забыл уже про этот топик...

Для начала про святой асм. Никакой конкуренции, он, конечно же, не выдерживает.

Написать на нем что-то небольшое можно, и несложно. Фишка в том, что не нужно туннельно-силовым микроскопом сканировать фотографии. Когда-то на асме можно было написать быстрый код (и сегодня можно), но компиляторы все ближе подбираются к человеку, а часто и переплевывают его (особенно если у вас гентушечка, иля бсд). Так что ценность асма как "инструмента для крутого кода" упала. В добавок, приоритеты нынче не те, скорость уже не имеет особого значения. Ниша, которая осталась для асма - это написание маленького кода (черви, вирусы), это уже искусство. Также знание асма необходимо при разработке (и снятии ^_^) всяких защит.

Колибри, написанная на асме, это просто развлечение. Асм - это просто хобби многих людей. Дело не в том, что на нем нельзя что-то написать, а в том, что на сях это проще. Собственно говоря, С и создавался, как заменитель асма. Спросите любого человека на васме, там все со мной согласятся. Пора горячей увлеченности проходит, и остается понимание того, какое место асму отведено.

 

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

Опубликовано
С(++) - это свобода

Свобода - это перл.

 

Ниша, которая осталась для асма - это написание маленького кода (черви, вирусы), это уже искусство.

Вставки никто не отменял. Есть проги, где даже с -march=i386 будет генерироваться код с SSE2, ибо вставки.

 

Особенно мне нравится стиль и философия java - красивые конструкции, невероятно мощные механизмы

Тогда уж в сторону D смотреть. Вот уж какой язык мне нравится - и красив, и академичен.

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

Инертность.

Где преподают программирование, используя паскаль, у нас что-ли?

http://stackoverflow.com/questions/644099/...versities-teach

 

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

Эмбедщина, загрузчики, драйвера, реверсинг, добавление функционала в программу для которой недоступны исходные коды, компиляция (кодогенерация, оптимизация). Писать на ассемблере то, что можно с тем же успехом написать на высокоуровневом языке это, конечно, дурь.

 

Он прекрасен.
Это не "способы извратиться", это гибкость и богатство возможностей
плохие программисты и поливают грязью С++, чтобы оправдать свою неполноценность

Удивляюсь, почему еще никто не дал ссылку на тему, где состоялся бенефис Ксеноцефала. =)

Опубликовано (изменено)
Колибри, написанная на асме, это просто развлечение. Асм - это просто хобби многих людей. Дело не в том, что на нем нельзя что-то написать, а в том, что на сях это проще. Собственно говоря, С и создавался, как заменитель асма. Спросите любого человека на васме, там все со мной согласятся. Пора горячей увлеченности проходит, и остается понимание того, какое место асму отведено.

Это понятно, я просто отвечал на фразу что на "Асме нельзя написать программу" :lol:

С(++) - это свобода. Она действительно несколько развращает, но это мы такие, а не язык. Все приходит с опытом. Поразительно то, что осовить язык можно за месяц, но понимать его начинаешь только спустя годы. Он прекрасен.

Не понимаю я чем он прекрасен... "Прекрасен" - это к питону ^^

 

Не нравится мне С++. Код на нем получается какой то неочевидный и запутанный.

 

К тому же мощности растут. Уже сейчас нет особого смысла писать что то прикладное на С, только если что то очень тяжелое или для embedded. Да и даже если тяжелое - зачастую лучше написать на том же C#. Или на питоне, а потом тяжелые куски переписать на C.

Изменено пользователем Davinel (смотреть историю редактирования)
  • 4 недели спустя...
Опубликовано (изменено)

Поскольку вышло за рамки той темы, то сюда.

А почему именно питон 3? Тем более, под базу с миллионом записей - в продакшене его же не рекомендуют к использованию. А как замену - постгрес.

Питон 3 потому что 1-уже есть несколько скриптов на нем, 2- v.2.6 хуже работает с юникодом, 3-неохота пользоваться чем-то, что не самое последнее (кстати 3.0 был выпущен в конце 2008-го года, до сих пор модуль mysql-я не подогнали под него).

PGSQL - это же вроде уже бд промышленного масштаба, а мне надо что-то поуниверсальнее и полегче, для одного-единственного скрипта. Пока смотрю в сторону SQLite, мож ещё MSSQL потыкаю если хватит бесплатных ограничений.

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

 

п.с. Изначально задумывалось на пхп, но он в юникоде похоже полный ноль.

 

по сути - требуется индексировать файлы, писать их в базу и позже давать на веб-форме искать по ней. Юникод обязателен. Может посоветуете какую-нить связку, под которую не нужно выделять отдельный комп?

Любые серьезные языки (Delphi, VB, VC) сразу забудьте, я хочу получить именно скрипт на пару сотен строк.

Изменено пользователем Andy_Scull (смотреть историю редактирования)
Опубликовано
Питон 3 потому что 1-уже есть несколько скриптов на нем

Несущественно, задача-то ведь другая.

 

2- v.2.6 хуже работает с юникодом

Малосущественно, задача не подразумевает активной сложной работы с юникодом.

 

3-неохота пользоваться чем-то, что не самое последнее

А это уже религия.

 

по сути - требуется индексировать файлы, писать их в базу и позже давать на веб-форме искать по ней

Не оно?

Опубликовано (изменено)

niiro dzyaki

Несущественно, задача-то ведь другая.

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

 

Не оно?

Нужен поиск только файлов, но не их содержимого. Именно поэтому я и оцениваю сложность как "простой скрипт". На пхп готовый код занимает меньше 10 килобайт, другое дело что совершенно не работает с юникодом.

 

А это уже религия.

В общем да, только стоит помнить что питону3 уже почти полтора года исполнилось, так что было вполне логичное решение сразу начинать писать на нем.

Изменено пользователем Andy_Scull (смотреть историю редактирования)
Опубликовано
Тогда постгрес в качестве базы. Ничего в нем особо монструозного нет (скажем, Amarok 1.4 в качестве внешней базы как раз его использовал, на mysql только в версии 2.х перешел, да и то только потому, что mysql стало дефолтной базой для кде)
Опубликовано (изменено)

В общем добил проблему, все оказалось проще чем я боялся. Для данной задачи вполне хватило SQLite (запрос с LIKE '%строка%' выполняется достаточно быстро на базе с 500к записей).

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

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

Изменено пользователем Andy_Scull (смотреть историю редактирования)
  • 2 месяца спустя...
Опубликовано (изменено)

Небольшой отвод души по поводу пустых значений в Visual Basic...

Полчаса пытался понять, почему не срабатывает макрос, пока не доперло что в VB -

Null - не равно ""

Null or True/False - это Null, и условие никогда не выполнится

Not (Null or True/False) - это тоже Null, и условие точно так же никогда не выполнится.

Т.е. сравнение прочитанных из базы строчек превращается в три ифа и пять строк - ведь каждую надо проверить на ненулевость... злость просто переполняет :)

 

Мда. Кровь в голову, в итоге совсем не то написал.

Частично не верно, так что не обращайте внимания

Изменено пользователем Andy_Scull (смотреть историю редактирования)
Опубликовано
Т.е. сравнение прочитанных из базы строчек превращается в три ифа и пять строк - ведь каждую надо проверить на ненулевость... злость просто переполняет

mystring1=NullifyEmptyString(GetStringFromBase()); // MakeEmptyStringFromNull if you prefer

mystring2=NullifyEmptyString(GetStringFromBase());

if (mystring1 != mystring2 ) {

...

};

 

Нет?

Опубликовано
mystring1=NullifyEmptyString(GetStringFromBase()); // MakeEmptyStringFromNull if you prefer

mystring2=NullifyEmptyString(GetStringFromBase());

if (mystring1 != mystring2 ) {

...

};

 

Нет?

Да, в итоге в вб это выглядит вот так -

if isNull(rsIn.Fields.Item(10).Value then strIn = "" else strIn = rsIn.Fields.Item(10).Value

if isNull(rsEx.Fields.Item(10).Value then strEx = "" else strEx = rsEx.Fields.Item(10).Value

if (strIn <> StrEx) then ...

Понятно, пять строк - это была гипербола, но общий смысл остается тем же...

После других языков уже привык к прозрачному преобразованию, и тут такая свинья

Опубликовано (изменено)
Хм. А можно пример языка, где ""==NULL?

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

Загадка/подсказка - назовите язык, где "aaa"!=Null не будет равняться ни True, ни False

Изменено пользователем Andy_Scull (смотреть историю редактирования)
Опубликовано

Перечитал. Там несколько о другом говорилось.

Null or True/False - это Null, и условие никогда не выполнится

Здесь Null не сравнивается с логическим значением, а приводится к нему.

 

А что до языков, где такое может быть, то самый очевидный пример SQL.

  • 4 недели спустя...
Опубликовано
Null это как бы третье не истина и не ложь, а незнамо что. Другое бесит в Визуальном Басике на самом деле нет единых правил работы с этим чудом, в разных библиотеках может быть по разному реализовано, вроде где то канает и простая проверка
  • 11 месяцев спустя...
Опубликовано

Дорогие товарищи!.. почти что коллеги!

Крик души человека, вконец дошедшего до ручки но таки превозмогшего все неприятности.

Если вы пишете программу, пожалуйста, либо не делайте глупых ограничений, либо выладывайте рядом сорсы, либо оперативно реагируйте на багрепорты.

Только что закончил ночное дебажинье тупо написанного торрент-клиента, который всем мне идеально подходил, но имел дебильское внутреннее ограничение в 160 байт на имя файла при подгружении торрента - т.е. обрезал все имена файлов в торренте, которые длиннее 160 байт (или 80 символов юникода). Учитывая что сюда же входит имя папки - это был полный пипец...

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

 

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

  • 1 год спустя...
Опубликовано

Подскажите, кто выдел/пробовал много языков программирования.

Ищу для прикладного программирования - писать программы для своих сиюминутных нужд.

 

Требования -

1. Высокоуровневый (типа питона и явы)

2. Относительно легко делать мультитрединг

3. Полная поддержка юникода (строки и в сорсах и в именах файлов)

4. Для винды компилируется в один .exe без распаковки при запуске (т.е. не как питоновские py2exe и им подобные, которые просто утрамбовывают сорсы и дллки, распаковывая и запуская из при запуске ехе)

5. Нет известных проблем с версиями винды (как у Go на 32-битных виндах)

6. Наличие библиотек/функций работы с sqlite, http

 

Ну и желательно вменяемый синтаксис.

Если б не недоработанность Go, он бы подошел... но есть проблемы с адресацией на 32-битных системах

Сейчас пишу на питоне, но его не скомпилируешь нормально

Опубликовано (изменено)

Там вроде можно конвертировать, или я путаю?

Есть тулзы вроде py2exe, и ещё что-то, они создают экзешник - загрузчик, который уже временно разворачивает (не помню, в памяти или в темп) все вложенные файлы, и запускает.

т.е. как бы запускает твою сконвертированную программу в переносной версии питона, в которой есть только те библиотеки, которые использовались в программе.

А я хочу просто один скомпиленный в машинный код экзешник.

Go как раз может такое, хотя судя по размеру и содержанию экзешника, он все же не в машинный код компилит. Хелло ворлд выходит размером 1мб, но зато работает без дополнительных файлов и памяти кушает 4мб

Изменено пользователем Andy_Scull (смотреть историю редактирования)

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...

Важная информация