niiro dzyaki Опубликовано 26 апреля, 2010 Жалоба Опубликовано 26 апреля, 2010 А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программуА мужики-то не знают... Ничего сложного, на самом деле, только трудоемко. Когда быстродействие или потребление памяти это оправдывало (например, игры на всяких спектрумах, 8086, да даже иногда и 386), вполне себе писали. Цитата
Zveroy Опубликовано 26 апреля, 2010 Жалоба Опубликовано 26 апреля, 2010 Вы же не против, если я вклинюсь в беседу и изложу свое скромное мнение?Для хорошего программиста чем больше возможностей тем лучше (очевидно ведь) а для плохого программиста это большое количество "ям" в которые он неизбежно провалится, вот плохие программисты и поливают грязью С++, чтобы оправдать свою неполноценность. Поэтому программирование преподают, используя паскаль, у него жесткий синтакс, чтобы ученики не "падали в ямы".А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программу, только специализированные вставки/модули.Хорошему программисту достаточно того, что есть. Чем больше ограничений, тем тщательней ты начинаешь продумывать задачу, и тем лучше получается конечный результат. Или не получается вообще, если в ходе анализа задачи приходишь к выводу, что она поставлена неверно. Богатство развращает, знаете ли.На паскале учат, потому что он прививает элементы хорошего стиля программирования, а не из-за гипотетических ям. Можно начинать учить и на бейске, но мы-то знаем, что из итого выходит.А по поводу ассемблера, здесь с вами определённо не согласятся. Сам я любитель интерпретируемых языков (ленивый страшно), в особенности питона, хотя в последнее время с интересом поглядываю на JavaScript. Никто с node-js не игрался? Выглядит довольно перспективно. Цитата
Davinel Опубликовано 29 апреля, 2010 Жалоба Опубликовано 29 апреля, 2010 (изменено) Поэтому программирование преподают, используя паскаль, у него жесткий синтакс, чтобы ученики не "падали в ямы".Программирование преподают используя паскаль, потому же, почему в штатах большой спрос на программистов на коболе...Инертность.А чума - это ассемблер, т.к. на нем невозможно реально, на практике, написать программу, только специализированные вставки/модули.а как вам ОС, полностью написанная на asm? Изменено 29 апреля, 2010 пользователем Davinel (смотреть историю редактирования) Цитата
anrkaid Опубликовано 30 апреля, 2010 Жалоба Опубликовано 30 апреля, 2010 Я и забыл уже про этот топик...Для начала про святой асм. Никакой конкуренции, он, конечно же, не выдерживает. Написать на нем что-то небольшое можно, и несложно. Фишка в том, что не нужно туннельно-силовым микроскопом сканировать фотографии. Когда-то на асме можно было написать быстрый код (и сегодня можно), но компиляторы все ближе подбираются к человеку, а часто и переплевывают его (особенно если у вас гентушечка, иля бсд). Так что ценность асма как "инструмента для крутого кода" упала. В добавок, приоритеты нынче не те, скорость уже не имеет особого значения. Ниша, которая осталась для асма - это написание маленького кода (черви, вирусы), это уже искусство. Также знание асма необходимо при разработке (и снятии ^_^) всяких защит. Колибри, написанная на асме, это просто развлечение. Асм - это просто хобби многих людей. Дело не в том, что на нем нельзя что-то написать, а в том, что на сях это проще. Собственно говоря, С и создавался, как заменитель асма. Спросите любого человека на васме, там все со мной согласятся. Пора горячей увлеченности проходит, и остается понимание того, какое место асму отведено. С(++) - это свобода. Она действительно несколько развращает, но это мы такие, а не язык. Все приходит с опытом. Поразительно то, что осовить язык можно за месяц, но понимать его начинаешь только спустя годы. Он прекрасен. Еще я люблю java, как "коммерческий с++", там сделан упор на безопасность. Особенно мне нравится стиль и философия java - красивые конструкции, невероятно мощные механизмы. Не всегда удается достичь гармонии между простотой и сложностью, найти баланс между расширяемостью и скоростью, но все же как красиво... Цитата
niiro dzyaki Опубликовано 30 апреля, 2010 Жалоба Опубликовано 30 апреля, 2010 С(++) - это свободаСвобода - это перл. Ниша, которая осталась для асма - это написание маленького кода (черви, вирусы), это уже искусство.Вставки никто не отменял. Есть проги, где даже с -march=i386 будет генерироваться код с SSE2, ибо вставки. Особенно мне нравится стиль и философия java - красивые конструкции, невероятно мощные механизмыТогда уж в сторону D смотреть. Вот уж какой язык мне нравится - и красив, и академичен. Цитата
Solanacean Опубликовано 30 апреля, 2010 Жалоба Опубликовано 30 апреля, 2010 Программирование преподают используя паскаль, потому же, почему в штатах большой спрос на программистов на коболе...Инертность.Где преподают программирование, используя паскаль, у нас что-ли?http://stackoverflow.com/questions/644099/...versities-teach Ниша, которая осталась для асма - это написание маленького кода (черви, вирусы), это уже искусство. Также знание асма необходимо при разработке (и снятии ) всяких защит.Эмбедщина, загрузчики, драйвера, реверсинг, добавление функционала в программу для которой недоступны исходные коды, компиляция (кодогенерация, оптимизация). Писать на ассемблере то, что можно с тем же успехом написать на высокоуровневом языке это, конечно, дурь. Он прекрасен.Это не "способы извратиться", это гибкость и богатство возможностейплохие программисты и поливают грязью С++, чтобы оправдать свою неполноценностьУдивляюсь, почему еще никто не дал ссылку на тему, где состоялся бенефис Ксеноцефала. =) Цитата
Davinel Опубликовано 30 апреля, 2010 Жалоба Опубликовано 30 апреля, 2010 (изменено) Колибри, написанная на асме, это просто развлечение. Асм - это просто хобби многих людей. Дело не в том, что на нем нельзя что-то написать, а в том, что на сях это проще. Собственно говоря, С и создавался, как заменитель асма. Спросите любого человека на васме, там все со мной согласятся. Пора горячей увлеченности проходит, и остается понимание того, какое место асму отведено.Это понятно, я просто отвечал на фразу что на "Асме нельзя написать программу" :lol: С(++) - это свобода. Она действительно несколько развращает, но это мы такие, а не язык. Все приходит с опытом. Поразительно то, что осовить язык можно за месяц, но понимать его начинаешь только спустя годы. Он прекрасен.Не понимаю я чем он прекрасен... "Прекрасен" - это к питону ^^ Не нравится мне С++. Код на нем получается какой то неочевидный и запутанный. К тому же мощности растут. Уже сейчас нет особого смысла писать что то прикладное на С, только если что то очень тяжелое или для embedded. Да и даже если тяжелое - зачастую лучше написать на том же C#. Или на питоне, а потом тяжелые куски переписать на C. Изменено 30 апреля, 2010 пользователем Davinel (смотреть историю редактирования) Цитата
Ice_Phoenix Опубликовано 2 мая, 2010 Жалоба Опубликовано 2 мая, 2010 Не понимаю я чем он прекрасен... "Прекрасен" - это к питону ^^Прекрасен -- это к Эрлангу =) Цитата
Andy_Scull Опубликовано 25 мая, 2010 Жалоба Опубликовано 25 мая, 2010 (изменено) Поскольку вышло за рамки той темы, то сюда.А почему именно питон 3? Тем более, под базу с миллионом записей - в продакшене его же не рекомендуют к использованию. А как замену - постгрес.Питон 3 потому что 1-уже есть несколько скриптов на нем, 2- v.2.6 хуже работает с юникодом, 3-неохота пользоваться чем-то, что не самое последнее (кстати 3.0 был выпущен в конце 2008-го года, до сих пор модуль mysql-я не подогнали под него).PGSQL - это же вроде уже бд промышленного масштаба, а мне надо что-то поуниверсальнее и полегче, для одного-единственного скрипта. Пока смотрю в сторону SQLite, мож ещё MSSQL потыкаю если хватит бесплатных ограничений.Машина-то одна, хочется один сервис бд для всего (веб-приложения-скрипты-итп) чтоб меньше мучаться. п.с. Изначально задумывалось на пхп, но он в юникоде похоже полный ноль. по сути - требуется индексировать файлы, писать их в базу и позже давать на веб-форме искать по ней. Юникод обязателен. Может посоветуете какую-нить связку, под которую не нужно выделять отдельный комп?Любые серьезные языки (Delphi, VB, VC) сразу забудьте, я хочу получить именно скрипт на пару сотен строк. Изменено 25 мая, 2010 пользователем Andy_Scull (смотреть историю редактирования) Цитата
niiro dzyaki Опубликовано 25 мая, 2010 Жалоба Опубликовано 25 мая, 2010 Питон 3 потому что 1-уже есть несколько скриптов на немНесущественно, задача-то ведь другая. 2- v.2.6 хуже работает с юникодомМалосущественно, задача не подразумевает активной сложной работы с юникодом. 3-неохота пользоваться чем-то, что не самое последнееА это уже религия. по сути - требуется индексировать файлы, писать их в базу и позже давать на веб-форме искать по нейНе оно? Цитата
Andy_Scull Опубликовано 25 мая, 2010 Жалоба Опубликовано 25 мая, 2010 (изменено) niiro dzyakiНесущественно, задача-то ведь другая.Ну как бы если я под каждую задачу буду ставить на машину свой инструмент конкретно для неё - то это полный зоопарк получится. Сейчас стоит 3-й, под него у меня написаны все полу-повседневные скрипты и совершенно не хочется ставить второй, разруливать настройки и пути, помнить разницу в синтаксисе и функциях и тому подобное. Не оно?Нужен поиск только файлов, но не их содержимого. Именно поэтому я и оцениваю сложность как "простой скрипт". На пхп готовый код занимает меньше 10 килобайт, другое дело что совершенно не работает с юникодом. А это уже религия.В общем да, только стоит помнить что питону3 уже почти полтора года исполнилось, так что было вполне логичное решение сразу начинать писать на нем. Изменено 25 мая, 2010 пользователем Andy_Scull (смотреть историю редактирования) Цитата
niiro dzyaki Опубликовано 25 мая, 2010 Жалоба Опубликовано 25 мая, 2010 Тогда постгрес в качестве базы. Ничего в нем особо монструозного нет (скажем, Amarok 1.4 в качестве внешней базы как раз его использовал, на mysql только в версии 2.х перешел, да и то только потому, что mysql стало дефолтной базой для кде) Цитата
Andy_Scull Опубликовано 26 мая, 2010 Жалоба Опубликовано 26 мая, 2010 (изменено) В общем добил проблему, все оказалось проще чем я боялся. Для данной задачи вполне хватило SQLite (запрос с LIKE '%строка%' выполняется достаточно быстро на базе с 500к записей).Если б тратило полминуты и больше - то уже попробовал бы постгрес (кстати спасибо за подсказку, действительно почти везде есть её нативная поддержка), а так - пара секунд.В плюсах SQLite просто то, что не потребовалось ничего ставить на машину. В питоне модуль уже есть, в пхп я его ставил при первой давней установке. Изменено 26 мая, 2010 пользователем Andy_Scull (смотреть историю редактирования) Цитата
Andy_Scull Опубликовано 27 июля, 2010 Жалоба Опубликовано 27 июля, 2010 (изменено) Небольшой отвод души по поводу пустых значений в Visual Basic...Полчаса пытался понять, почему не срабатывает макрос, пока не доперло что в VB - Null - не равно ""Null or True/False - это Null, и условие никогда не выполнитсяNot (Null or True/False) - это тоже Null, и условие точно так же никогда не выполнится.Т.е. сравнение прочитанных из базы строчек превращается в три ифа и пять строк - ведь каждую надо проверить на ненулевость... злость просто переполняет :) Мда. Кровь в голову, в итоге совсем не то написал.Частично не верно, так что не обращайте внимания Изменено 29 июля, 2010 пользователем Andy_Scull (смотреть историю редактирования) Цитата
niiro dzyaki Опубликовано 27 июля, 2010 Жалоба Опубликовано 27 июля, 2010 Т.е. сравнение прочитанных из базы строчек превращается в три ифа и пять строк - ведь каждую надо проверить на ненулевость... злость просто переполняетmystring1=NullifyEmptyString(GetStringFromBase()); // MakeEmptyStringFromNull if you prefermystring2=NullifyEmptyString(GetStringFromBase());if (mystring1 != mystring2 ) {...}; Нет? Цитата
Andy_Scull Опубликовано 27 июля, 2010 Жалоба Опубликовано 27 июля, 2010 mystring1=NullifyEmptyString(GetStringFromBase()); // MakeEmptyStringFromNull if you prefermystring2=NullifyEmptyString(GetStringFromBase());if (mystring1 != mystring2 ) {...}; Нет?Да, в итоге в вб это выглядит вот так - if isNull(rsIn.Fields.Item(10).Value then strIn = "" else strIn = rsIn.Fields.Item(10).Valueif isNull(rsEx.Fields.Item(10).Value then strEx = "" else strEx = rsEx.Fields.Item(10).Valueif (strIn <> StrEx) then ...Понятно, пять строк - это была гипербола, но общий смысл остается тем же...После других языков уже привык к прозрачному преобразованию, и тут такая свинья Цитата
reiten Опубликовано 28 июля, 2010 Жалоба Опубликовано 28 июля, 2010 Хм. А можно пример языка, где ""==NULL? Цитата
Andy_Scull Опубликовано 28 июля, 2010 Жалоба Опубликовано 28 июля, 2010 (изменено) Хм. А можно пример языка, где ""==NULL?Я без понятия, где такая глупость сделана. Если считаете что я жаловался именно на это - то ещё пару раз прочитайте мои посты выше.Загадка/подсказка - назовите язык, где "aaa"!=Null не будет равняться ни True, ни False Изменено 28 июля, 2010 пользователем Andy_Scull (смотреть историю редактирования) Цитата
reiten Опубликовано 28 июля, 2010 Жалоба Опубликовано 28 июля, 2010 Перечитал. Там несколько о другом говорилось. Null or True/False - это Null, и условие никогда не выполнитсяЗдесь Null не сравнивается с логическим значением, а приводится к нему. А что до языков, где такое может быть, то самый очевидный пример SQL. Цитата
Nulex Опубликовано 23 августа, 2010 Жалоба Опубликовано 23 августа, 2010 Null это как бы третье не истина и не ложь, а незнамо что. Другое бесит в Визуальном Басике на самом деле нет единых правил работы с этим чудом, в разных библиотеках может быть по разному реализовано, вроде где то канает и простая проверка Цитата
Andy_Scull Опубликовано 8 августа, 2011 Жалоба Опубликовано 8 августа, 2011 Дорогие товарищи!.. почти что коллеги!Крик души человека, вконец дошедшего до ручки но таки превозмогшего все неприятности.Если вы пишете программу, пожалуйста, либо не делайте глупых ограничений, либо выладывайте рядом сорсы, либо оперативно реагируйте на багрепорты.Только что закончил ночное дебажинье тупо написанного торрент-клиента, который всем мне идеально подходил, но имел дебильское внутреннее ограничение в 160 байт на имя файла при подгружении торрента - т.е. обрезал все имена файлов в торренте, которые длиннее 160 байт (или 80 символов юникода). Учитывая что сюда же входит имя папки - это был полный пипец...В общем, багрепорты были благополучно проигнорированы, пришлось самому дебажить и хакить эту хрень. И неизвестно, не аукнется ли мой хак ещё в каком-то месте проги... п.с. это чисто так, как я писал выше, крик души и напоминание о том, что другим может не хватить тех норм, которыми руководствуетесь вы. Цитата
Andy_Scull Опубликовано 5 ноября, 2012 Жалоба Опубликовано 5 ноября, 2012 Подскажите, кто выдел/пробовал много языков программирования. Ищу для прикладного программирования - писать программы для своих сиюминутных нужд. Требования - 1. Высокоуровневый (типа питона и явы)2. Относительно легко делать мультитрединг3. Полная поддержка юникода (строки и в сорсах и в именах файлов)4. Для винды компилируется в один .exe без распаковки при запуске (т.е. не как питоновские py2exe и им подобные, которые просто утрамбовывают сорсы и дллки, распаковывая и запуская из при запуске ехе)5. Нет известных проблем с версиями винды (как у Go на 32-битных виндах)6. Наличие библиотек/функций работы с sqlite, http Ну и желательно вменяемый синтаксис.Если б не недоработанность Go, он бы подошел... но есть проблемы с адресацией на 32-битных системахСейчас пишу на питоне, но его не скомпилируешь нормально Цитата
Nulex Опубликовано 5 ноября, 2012 Жалоба Опубликовано 5 ноября, 2012 но его не скомпилируешь нормально Там вроде можно конвертировать, или я путаю? Цитата
Andy_Scull Опубликовано 5 ноября, 2012 Жалоба Опубликовано 5 ноября, 2012 (изменено) Там вроде можно конвертировать, или я путаю?Есть тулзы вроде py2exe, и ещё что-то, они создают экзешник - загрузчик, который уже временно разворачивает (не помню, в памяти или в темп) все вложенные файлы, и запускает.т.е. как бы запускает твою сконвертированную программу в переносной версии питона, в которой есть только те библиотеки, которые использовались в программе.А я хочу просто один скомпиленный в машинный код экзешник.Go как раз может такое, хотя судя по размеру и содержанию экзешника, он все же не в машинный код компилит. Хелло ворлд выходит размером 1мб, но зато работает без дополнительных файлов и памяти кушает 4мб Изменено 5 ноября, 2012 пользователем Andy_Scull (смотреть историю редактирования) Цитата
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.