Вход на сайт
базовая литература по программированию
30.08.06 16:32
Последний раз изменено 04.09.06 13:39 (Tomasson)
меня на днях спросили, могу ли я подсказать какие-то курсы по программированию.
Ответил, что я - самоучка и никакие курсы не посещал.
Посоветовал научиться программированию по книгам.
И вот возник вопрос: реально ли составить некий базовый список литературы для людей, которые хотят научиться программировать? Я исхожу из того, человеку программирование нужно как хобби и/или для каких-то своих проэктов (например, свой сайт или какие-то небольшие программки), а не как основная профессия (посмотрите на Murr'a и быстро передумайте;-))
У кого какие будут думки на этот счет?
Хотелось бы иметь именно базовый список, дабы не дать человеку утонуть в океане книг :-)
C++
--- Andrew Koenig *Intensivkurs C++. Schneller Einstieg über die Standardbibliothek* (http://www.amazon.de/Intensivkurs-Schneller-Einstieg-%fcber-Standardbibliothek/d...)
--- Heiko Kalista *C++ für Spieleprogrammierer* (http://www.amazon.de/C%2b%2b-f%fcr-Spieleprogrammierer-Heiko-Kalista/dp/34464033...)
Java
--- Christian Ullenboom *Java ist auch eine Insel* (http://www.galileocomputing.de/openbook/javainsel5/)
--- Guido Krüger *Handbuch der Java-Programmierung* (http://www.javabuch.de/)
C#
PHP
--- George Schlossnagle *Professionelle PHP 5-Programmierung* (http://www.amazon.de/Professionelle-5-Programmierung-Entwicklerleitfaden-gro%dfe...)
--- Котеров, Костарев *PHP 5. В подлиннике* (http://www.bhv.ru/books/book.php?id=6643)
--- Котеров *Самоучитель PHP 4* (http://www.zipsites.ru/books/php4/)
HTML
Javascript
XML
XSLT
--- Michael Fitzgerald *Learning XSLT* (http://www.amazon.com/Learning-XSLT-Michael-Fitzgerald/dp/0596003277)
--- Sal Mangano *XSLT Cookbook* (http://www.amazon.com/XSLT-Cookbook-Second-Cookbooks-OReilly/dp/0596009747)
--- Michael Kay *XSLT 2.0 Programmer's Reference* (http://www.amazon.com/XSLT-2-0-Programmers-Reference-Programmer/dp/0764569090)
Ответил, что я - самоучка и никакие курсы не посещал.
Посоветовал научиться программированию по книгам.
И вот возник вопрос: реально ли составить некий базовый список литературы для людей, которые хотят научиться программировать? Я исхожу из того, человеку программирование нужно как хобби и/или для каких-то своих проэктов (например, свой сайт или какие-то небольшие программки), а не как основная профессия (посмотрите на Murr'a и быстро передумайте;-))
У кого какие будут думки на этот счет?
Хотелось бы иметь именно базовый список, дабы не дать человеку утонуть в океане книг :-)
C++
--- Andrew Koenig *Intensivkurs C++. Schneller Einstieg über die Standardbibliothek* (http://www.amazon.de/Intensivkurs-Schneller-Einstieg-%fcber-Standardbibliothek/d...)
--- Heiko Kalista *C++ für Spieleprogrammierer* (http://www.amazon.de/C%2b%2b-f%fcr-Spieleprogrammierer-Heiko-Kalista/dp/34464033...)
Java
--- Christian Ullenboom *Java ist auch eine Insel* (http://www.galileocomputing.de/openbook/javainsel5/)
--- Guido Krüger *Handbuch der Java-Programmierung* (http://www.javabuch.de/)
C#
PHP
--- George Schlossnagle *Professionelle PHP 5-Programmierung* (http://www.amazon.de/Professionelle-5-Programmierung-Entwicklerleitfaden-gro%dfe...)
--- Котеров, Костарев *PHP 5. В подлиннике* (http://www.bhv.ru/books/book.php?id=6643)
--- Котеров *Самоучитель PHP 4* (http://www.zipsites.ru/books/php4/)
HTML
Javascript
XML
XSLT
--- Michael Fitzgerald *Learning XSLT* (http://www.amazon.com/Learning-XSLT-Michael-Fitzgerald/dp/0596003277)
--- Sal Mangano *XSLT Cookbook* (http://www.amazon.com/XSLT-Cookbook-Second-Cookbooks-OReilly/dp/0596009747)
--- Michael Kay *XSLT 2.0 Programmer's Reference* (http://www.amazon.com/XSLT-2-0-Programmers-Reference-Programmer/dp/0764569090)
NEW 30.08.06 18:53
в ответ scorpi_ 30.08.06 17:11
думаешь, имеет смысл новичку сразу С++ подсовывать?
Я б не стал.
Для веба PHP хватит с ушами, а для программок каких-то - Java, C#.
...вот...
предлагаю на этих языках сконцентрироваться :-)
Интересует еще литература, которая поможет новичку понять ООП. Меня несколько раз спрашивали, но я так ничего и не вспомнил подходящего.
Особенно ПХПэшники интересуются этим, которые хотят ООП в своих проектах использовать. Замучали уже :-)
Я б не стал.
Для веба PHP хватит с ушами, а для программок каких-то - Java, C#.
...вот...
предлагаю на этих языках сконцентрироваться :-)
Интересует еще литература, которая поможет новичку понять ООП. Меня несколько раз спрашивали, но я так ничего и не вспомнил подходящего.
Особенно ПХПэшники интересуются этим, которые хотят ООП в своих проектах использовать. Замучали уже :-)
NEW 30.08.06 20:12
в ответ Tomasson 30.08.06 16:32
(посмотрите на Murr'a и быстро передумайте;-))
------
И что же ты имел в виду? Муррка с виду очень даже ничего... Белая, пушистенькая...
А что царапается - так на то и Котяшество, что бы царапки осталять...
Что до списка... Тут в первую очередь надо определиться с областью применения.
В общем случае надо начинать с чето-то, что даст четкое понимание различия между
данными, их обработкой и при этом будет ООП-базирующееся. Дать это на ПХП... хммм...
думаю, что практически невозможно - слишком много сторонних моментов для новичка,
особенно, при самостоятельном изучении.
Что до курсов - вчера мне тоже запостили этот вопрос. Порекомендовал... начальные
курсы по Ораклу - там как раз на год по времени и дают неплохо. Правда стоит это
удовольствие дороговато - 10.000...
А если без шуток, то нужно достаточно профессиональное введение в программирование.
При том тренаже, который я проводил, это занимало порядка трех месяцев и из группы в
14-15 человек в нормальном темпе информацию могли освоить 5-6 человек... при том, что
полные дубы отсеивались до начала тренажа.
Так что если у кого есть желание самостоятельно учиться по книжкам и достичь хоть
сколь-нибудь существенного уровня - готовьтесь к тому, что вы будете каждый божий
день читать какую-то новую литературу и пробовать что-то делать в течениии лет этак пяти...
По прошествии этого времени - сможете что-то делать... но чтобы продолжать мочь это
делать, будете полностью переучиваться, в том же или чуть большем объеме, что освоите
за первые пять лет, - каждые три года...
Так что - думайте, не зря
Tomasson разделил на профи и любителей...
------
И что же ты имел в виду? Муррка с виду очень даже ничего... Белая, пушистенькая...
А что царапается - так на то и Котяшество, что бы царапки осталять...

Что до списка... Тут в первую очередь надо определиться с областью применения.
В общем случае надо начинать с чето-то, что даст четкое понимание различия между
данными, их обработкой и при этом будет ООП-базирующееся. Дать это на ПХП... хммм...
думаю, что практически невозможно - слишком много сторонних моментов для новичка,
особенно, при самостоятельном изучении.
Что до курсов - вчера мне тоже запостили этот вопрос. Порекомендовал... начальные
курсы по Ораклу - там как раз на год по времени и дают неплохо. Правда стоит это
удовольствие дороговато - 10.000...
А если без шуток, то нужно достаточно профессиональное введение в программирование.
При том тренаже, который я проводил, это занимало порядка трех месяцев и из группы в
14-15 человек в нормальном темпе информацию могли освоить 5-6 человек... при том, что
полные дубы отсеивались до начала тренажа.
Так что если у кого есть желание самостоятельно учиться по книжкам и достичь хоть
сколь-нибудь существенного уровня - готовьтесь к тому, что вы будете каждый божий
день читать какую-то новую литературу и пробовать что-то делать в течениии лет этак пяти...
По прошествии этого времени - сможете что-то делать... но чтобы продолжать мочь это
делать, будете полностью переучиваться, в том же или чуть большем объеме, что освоите
за первые пять лет, - каждые три года...
Так что - думайте, не зря

NEW 30.08.06 23:16
Объясни мне монаду Cont Хаскеля.
http://www.nomaware.com/monads/html/contmonad.html
http://www.nomaware.com/monads/html/contmonad.html
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 00:10
Не, про новичков я не влезаю, я затрудняюсь вообще что-либо там сказать, т.к. начинаю думать, что потерял очень много времени начиная с императивщины и теперь вынужден и математику изучать и менять образ мышления, но, посколько, я пока не продвинулся особо в функциональщине, то не в состоянии оспорить ваш диалог и высказать мегамысль, что новичков надо сначала математикой пичкать. Но утверждение Симпла о том, что С++ это самое сложное и после него раз плюнуть изучить что-то другое, я, думаю, смогу оспорить, фактически я сам так думал, пока моя экс супруга начав учится в местном уни не попросила меня помочь ей разобраться с SML. В общем, я сел в лужу тогда. С++ помог однажды только легко осилить яву и иже с ней,
типа всякого мусора наподобие PHP, но не больше. Самые простые вещи из мира функциональщины вызывали у меня полнейший тормозизм.
function create(k) {
var arr = [];
for (var j=1; j<k; j++) {
arr[j] = function(n) {
return function() { alert(n*n) }
}(j);
}
return arr;
}
Простое двойное замыкание (JavaScript), но после С++ я никак не мог понять его...
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 00:33
в ответ voxel3d 31.08.06 00:10
То что фукциональщина сложнее для понимания это ясно. Мне собственно непонятно одно - зачем тебе продвигаться в функциональщине? Я честно говоря с самой первой секунды и по сей день думаю, что это чистейшей воды извращение...
В профессиональном смысле это вроде тоже довольно таки бесполезная вещь. Чистый интерес? Желание поломать голову?
ЗЫ Классная цитата: "Abuse of the Continuation monad can produce code that is impossible to understand and maintain." Только abuse даже излишне, достаточно просто use...

ЗЫ Классная цитата: "Abuse of the Continuation monad can produce code that is impossible to understand and maintain." Только abuse даже излишне, достаточно просто use...
NEW 31.08.06 01:07
в ответ scorpi_ 31.08.06 00:33
Началось вс╦ с STL. Я сразу проникся ей, как только она мне на глаза попалась и стал использовать е╦. И понял, что такую красивую систему я не смог бы придумать. Я имею в виду не то чтобы я не смог библиотеку контейнеров или алгоритмов написать, вовсе нет, мог и писал, но, вот, чтобы гармонично библиотека контейнеров с библиотекой алгоритмов ужилась, такого, неа. Я не смог бы прослойку в виде функциональных объектов, адаптеров, отрицателей, предикатов и прочего придумать.
Я бы не стал говорить, что в профессинальном смысле, это бесполезная вещь. Ты пользуешься и STL и Boost, там хренова туча взятого из функциональщины. Сигналы со слотами, функционалы, лямбды и прочее вс╦ оттуда и вс╦ находит применение сокращая объ╦м работы.
Я верю в то, что изучение функциональщины улучшит мо╦ программирование, вот и вс╦. Насколько подходяща функциональная парадигма, чтобы полностью заменить собой императивное программирование, я пока не знаю, но собираюсь это выяснить. Пока осознал, что функциональщина позволяет иметь полноценное ООП в тех языках, где его как такового и нет, например, в том же JavaScript. Несмотря на наличие наследования прототипов, инкапсуляции как таковой нет, но с помощью тех же замыканий, у "классов" легко реализуются приватные поля.
> Abuse of the Continuation monad can produce code that is impossible to understand and maintain.
А теперь замени "Continuation monad" на "C++ templates" и утверждение не потеряет истинность.
Я бы не стал говорить, что в профессинальном смысле, это бесполезная вещь. Ты пользуешься и STL и Boost, там хренова туча взятого из функциональщины. Сигналы со слотами, функционалы, лямбды и прочее вс╦ оттуда и вс╦ находит применение сокращая объ╦м работы.
Я верю в то, что изучение функциональщины улучшит мо╦ программирование, вот и вс╦. Насколько подходяща функциональная парадигма, чтобы полностью заменить собой императивное программирование, я пока не знаю, но собираюсь это выяснить. Пока осознал, что функциональщина позволяет иметь полноценное ООП в тех языках, где его как такового и нет, например, в том же JavaScript. Несмотря на наличие наследования прототипов, инкапсуляции как таковой нет, но с помощью тех же замыканий, у "классов" легко реализуются приватные поля.
> Abuse of the Continuation monad can produce code that is impossible to understand and maintain.
А теперь замени "Continuation monad" на "C++ templates" и утверждение не потеряет истинность.

Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 01:45
Для веба PHP хватит с ушами, а для программок каких-то - Java, C#.
...вот...
предлагаю на этих языках сконцентрироваться :-)
Для PHP я могу рекомендовать http://www.amazon.de/Professionelle-PHP-5-Programmierung-Entwicklerleitfaden-f%f..., но это уже для продвинутых. Для начального уровня мне кажется нет ничего лучше чем http://www.php.net/manual/de/.
По С# я не специалист. А по Java я честно говоря хороших книг не видел. Вообще.
...вот...
предлагаю на этих языках сконцентрироваться :-)
Для PHP я могу рекомендовать http://www.amazon.de/Professionelle-PHP-5-Programmierung-Entwicklerleitfaden-f%f..., но это уже для продвинутых. Для начального уровня мне кажется нет ничего лучше чем http://www.php.net/manual/de/.
По С# я не специалист. А по Java я честно говоря хороших книг не видел. Вообще.
NEW 31.08.06 01:53
в ответ scorpi_ 31.08.06 00:33
По-поводу извращений, это очень спорный вопрос.
Вот, скажи, что является бОльшим извращением, запись вида:

typedef void (*SIG_TYP)(int);
typedef void (*SIG_ARG_TYP)(int);
SIG_TYP signal(int, SIG_ARG_TYP);
или
signal: int * (int -> void) -> (int -> void)
По мне, так первое. Могу целую кучу синтаксического сахара привести и ответного ужаса.
Но дело не в ситаксисе самом, дело в логичности и стройности мышления, которое присуще математике и которое напрямую выражается в функциональщине.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 02:16
в ответ scorpi_ 31.08.06 01:36
> Мне всегда казалось, что шаблоны очень простая для понимания вещь..
Я думаю, с тобой не согласится очень много людей.
Мне любопытно кто-нибудь расскажет что это, зачем это и как работает, только не подсказывай :) :
Я думаю, с тобой не согласится очень много людей.
Мне любопытно кто-нибудь расскажет что это, зачем это и как работает, только не подсказывай :) :
template<bool> struct XXXXX;
template<> struct XXXXX<true> {};
На самом деле пример очень неудачный, оно на самом деле очень просто для понимания.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 10:29
в ответ voxel3d 31.08.06 02:16
Пример действительно неудачный. Шаблоны вводятся в первую очередь для type-safe замены макросов и имплементации контейнеров. Отсюда и будем плясать:
template<class T> inline
const T& max( const T& left, const T& right )
{
return left < right ? right : left;
}
Я думаю это действительно несложно.
По поводу указателей на функции - да, в С их синтакс действительно очень неудобен и сложен, но твой противопример не более интуитивен.
ЗЫ Leider keine Zeit für weitere Diskussionen - уехал в Хаген.
NEW 31.08.06 11:12
в ответ voxel3d 30.08.06 23:16
scorpi_ уже, собственно, все сказал, мне добавить нечего. Функциональные языки тут не пришей кобыле хвост.
Я уже по-моему писал, что имел удовольствие заниматься функциональными языками (lisp и scheme), так что смог бы объяснить, если бы мне не было так лень. Признаю, естественно, что знание С++ мне в этом не поможет.
Я уже по-моему писал, что имел удовольствие заниматься функциональными языками (lisp и scheme), так что смог бы объяснить, если бы мне не было так лень. Признаю, естественно, что знание С++ мне в этом не поможет.
NEW 31.08.06 11:37
> scorpi_ уже, собственно, все сказал, мне добавить нечего.
Ты по диагонали что ли тред прочитал?
> Функциональные языки тут не пришей кобыле хвост.
Где "тут"? Я уже сказал, что мой комментарий относится только к твоей реплике про крутость знаний С++.
> так что смог бы объяснить, если бы мне не было так лень
Ну, censored, просто. Нету слов. Если ты не заметил, я не стал ни смайликов ставить в том посте, ни ехидно высказываться, чтобы ты не подумал, что это подколка. Показывать, как тебе лень, мне не надо, я тут не ересь пишу от незнания и ламеризма. Если ты в состоянии объяснить, объясняй, если нет, то так и скажи.
Ты по диагонали что ли тред прочитал?

> Функциональные языки тут не пришей кобыле хвост.
Где "тут"? Я уже сказал, что мой комментарий относится только к твоей реплике про крутость знаний С++.
> так что смог бы объяснить, если бы мне не было так лень
Ну, censored, просто. Нету слов. Если ты не заметил, я не стал ни смайликов ставить в том посте, ни ехидно высказываться, чтобы ты не подумал, что это подколка. Показывать, как тебе лень, мне не надо, я тут не ересь пишу от незнания и ламеризма. Если ты в состоянии объяснить, объясняй, если нет, то так и скажи.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 11:49
в ответ voxel3d 31.08.06 11:37
> Ты по диагонали что ли тред прочитал?
Нет, сверху донизу.
> Где "тут"? Я уже сказал, что мой комментарий относится только к твоей реплике про крутость знаний С++.
А моя реплика - в контексте ветки.
> Если ты не заметил, я не стал ни смайликов ставить в том посте, ни ехидно высказываться, чтобы ты не подумал, что это подколка. Показывать, как тебе лень, мне не надо, я тут не ересь пишу от незнания и ламеризма. Если ты в состоянии объяснить, объясняй, если нет, то так и скажи.
Я как раз думаю, что это именно подъ...бка.
Нет, я не в состоянии объяснить это на данный момент. Удовлетворен?
Нет, сверху донизу.
> Где "тут"? Я уже сказал, что мой комментарий относится только к твоей реплике про крутость знаний С++.
А моя реплика - в контексте ветки.
> Если ты не заметил, я не стал ни смайликов ставить в том посте, ни ехидно высказываться, чтобы ты не подумал, что это подколка. Показывать, как тебе лень, мне не надо, я тут не ересь пишу от незнания и ламеризма. Если ты в состоянии объяснить, объясняй, если нет, то так и скажи.
Я как раз думаю, что это именно подъ...бка.
Нет, я не в состоянии объяснить это на данный момент. Удовлетворен?
NEW 31.08.06 12:21
Блин, Симпл, ты сказал, что после С++ "потом что угодно сможешь понять"? Сказал. Это утверждение было сказанно с целью показать, что С++ помогает понять другие языки программирования? Было. Я тебе сказал, что ты ошибаешься, а ты начал с этим спорить.
Теперь ты начинаешь уводить всё в сторону, к тому же ещё и обзывая лисп со схемой функциональными языками, что совсем неправильно. Если тебе С++ поможет моноиды в математике понимать, то я снимаю шляпу перед твоей гениальностью. Я не понимаю, зачем спорить, если ты не зная сейчас монад Хаскеля и зная что ты всё равно не будешь их изучать просто ради спора со мной доказывать, что белое это чёрное, а чёрное это белое.
Теперь ты начинаешь уводить всё в сторону, к тому же ещё и обзывая лисп со схемой функциональными языками, что совсем неправильно. Если тебе С++ поможет моноиды в математике понимать, то я снимаю шляпу перед твоей гениальностью. Я не понимаю, зачем спорить, если ты не зная сейчас монад Хаскеля и зная что ты всё равно не будешь их изучать просто ради спора со мной доказывать, что белое это чёрное, а чёрное это белое.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 13:24
в ответ voxel3d 31.08.06 12:21
> Блин, Симпл, ты сказал, что после С++ "потом что угодно сможешь понять"? Сказал. Это утверждение было сказанно с целью показать,
> что С++ помогает понять другие языки программирования? Было. Я тебе сказал, что ты ошибаешься, а ты начал с этим спорить.
Хорошо, воксельтридэ, я признаю, что был неправ, если подходить к вопросу глобально. Теперь ты доволен?
> Теперь ты начинаешь уводить всё в сторону, к тому же ещё и обзывая лисп со схемой функциональными языками, что совсем неправильно.
Не надо ставить все с ног на голову. Я только хотел тебе пояснить, что мое утверждение было сделано в определенном контексте. Доходит теперь?
С какой стати lisp не ф. язык?
> что С++ помогает понять другие языки программирования? Было. Я тебе сказал, что ты ошибаешься, а ты начал с этим спорить.
Хорошо, воксельтридэ, я признаю, что был неправ, если подходить к вопросу глобально. Теперь ты доволен?
> Теперь ты начинаешь уводить всё в сторону, к тому же ещё и обзывая лисп со схемой функциональными языками, что совсем неправильно.
Не надо ставить все с ног на голову. Я только хотел тебе пояснить, что мое утверждение было сделано в определенном контексте. Доходит теперь?
С какой стати lisp не ф. язык?
NEW 31.08.06 15:03
в ответ Simple 31.08.06 13:24
> С какой стати lisp не ф. язык?
Лисп в некоторых классификациях попадает в функциональные языки, но это не корректно. В лиспе отсутствует карринг, не гарантируется оптимизация хвостовой рекурсии, что означает фиг, а не писанину в функциональном стиле. В лиспе масса императивных вещей, и не гарантируется отсутствие побочных эффектов при вызове функций. Лисп это мультипарадигменный язык, который хреново работает с функциями. Если наличие императивных вещей может означать всего лишь "не чистый фя", то отсутствие поддержки хвостовой рекурсии означает "не фя".
Со схемой я не прав, схема - фя.
Лисп в некоторых классификациях попадает в функциональные языки, но это не корректно. В лиспе отсутствует карринг, не гарантируется оптимизация хвостовой рекурсии, что означает фиг, а не писанину в функциональном стиле. В лиспе масса императивных вещей, и не гарантируется отсутствие побочных эффектов при вызове функций. Лисп это мультипарадигменный язык, который хреново работает с функциями. Если наличие императивных вещей может означать всего лишь "не чистый фя", то отсутствие поддержки хвостовой рекурсии означает "не фя".
Со схемой я не прав, схема - фя.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 31.08.06 21:08
в ответ scorpi_ 31.08.06 10:29
По поводу указателей на функции - да, в С их синтакс действительно очень неудобен и сложен
------
Если смотреть на синтаксис - возможно что несколько не естественно... но что является естественным в такой искуственной вещи, как язык программирования?
Насчет сложности - если есть понимание сути указателя (любого), то указатель-на-функцию ничего сложного собой не представляет. В конце-концов это же не СБилдеровская "кляуза"...
------
Если смотреть на синтаксис - возможно что несколько не естественно... но что является естественным в такой искуственной вещи, как язык программирования?
Насчет сложности - если есть понимание сути указателя (любого), то указатель-на-функцию ничего сложного собой не представляет. В конце-концов это же не СБилдеровская "кляуза"...

NEW 01.09.06 09:35
в ответ Tomasson 30.08.06 16:32
to all:
вы что тут устроили, демоны?! %-0
где мадиратар? :-/
Ок, давайте лит-ру по любому языку. Пусть даже по этому ужасному С++ :-)
Только такую, чтобы не отбить у человека желание обучаться :-)
к противникам php:
и на чем посоветуете челу программировать веб-приложения, если он наконец-то решил уйти от статики в динамику? :-)
в его арсенале в лучшем случае будет html и javascript.
побойтесь бога! PHP для него единственный выход :-Р.
Я б, конечно, чела сразу в C#-ую веру стал обращать 8-), но с учетом цен на хостинги, нечего и рыпаться.
Итак....лучше книги давайте! .... вместо того, чтобы людей своей болтовн╦й отпугивать 8-)
P.S. Мадиратар, не спать!
вы что тут устроили, демоны?! %-0
где мадиратар? :-/
Ок, давайте лит-ру по любому языку. Пусть даже по этому ужасному С++ :-)
Только такую, чтобы не отбить у человека желание обучаться :-)
к противникам php:
и на чем посоветуете челу программировать веб-приложения, если он наконец-то решил уйти от статики в динамику? :-)
в его арсенале в лучшем случае будет html и javascript.
побойтесь бога! PHP для него единственный выход :-Р.
Я б, конечно, чела сразу в C#-ую веру стал обращать 8-), но с учетом цен на хостинги, нечего и рыпаться.
Итак....лучше книги давайте! .... вместо того, чтобы людей своей болтовн╦й отпугивать 8-)
P.S. Мадиратар, не спать!
NEW 01.09.06 10:19
в ответ Tomasson 01.09.06 09:35
> P.S. Мадиратар, не спать!
Ты еретик и тебя надо поджарить.
> к противникам php: и на чем посоветуете челу программировать веб-приложения, если он наконец-то решил уйти от статики в динамику? :-)
На бейсике или лучше нет, пусть сразу сделает себе лоботомию.
> побойтесь бога! PHP для него единственный выход :-Р.
Лоботомия даст лучшие результаты.
Читай, я полностью согласен с человеком, посколько, в одинаковой ситуации нахожусь, поэтому просто процитирую:
п.с. RoR дай своему начинающему.
Ты еретик и тебя надо поджарить.

> к противникам php: и на чем посоветуете челу программировать веб-приложения, если он наконец-то решил уйти от статики в динамику? :-)
На бейсике или лучше нет, пусть сразу сделает себе лоботомию.

> побойтесь бога! PHP для него единственный выход :-Р.
Лоботомия даст лучшие результаты.
Читай, я полностью согласен с человеком, посколько, в одинаковой ситуации нахожусь, поэтому просто процитирую:
В ответ на:
Скажем так, я уже третий год жизни транжирю на работу с этим языком. И мое накопленное этими годами неудовольствие скорее оправдано, чем наоборот.
Во-первых, встать именно по языковым возможностям хоть на сантиметр ближе к языкам "общего назначения", таким, как Python или Ruby, PHP не сможет раньше шестой версии. Пятая ветка -- это скорее переходной этап, как что-то полноценное я ее рассматривать не берусь. Это во-первых. А во-вторых, быдлохостинги вовсю используют четверку, и это гуано мне тычут как требование в ТЗ.
Гуанистость проявляется собственно вот в чем.
Язык у нас ориентирован на веб. А раз так, то он должен облегчать веб-разработку до максимума. Тем не менее, стандартного фреймворка для хотя бы того же MVC там просто нет. Либо пиши свое, либо рассматривай вагон и тележку готовых, каждую со своими сдвигами по фазе.
Впрочем, это не предвидится и в следующих версиях. Блин, Ruby ни разу не веб-язык, но Rails у него есть, причем как стандарт де факто!
Во-вторых. Часто нужные функции array_map, array_filter и прочие жутко неудобны потому, что создавать анонимные функции неудобно. А создавать анонимные функции (через create_function()) неудобно потому, что Zend не позволяет от них избавиться. Для них unset() не пашет, даже если ты можешь доказать, что эта функция никогда больше тебе не понадобится.
В связи с этим еще одна фень. Функции в рантайме можно задавать только через строки. В Javascript это в разы лучше.
Результат работы некоторых функций нужно предварительно помещать в переменную, а уж потом что-то с ней делать. Когда так делать, а когда нет, на поверхности отнюдь не плавает, изменяется от версии к версии и заставляет лезть в букварь на каждый чих.
Лично моя придирка, если функцию можно задать как одно выражение, я хотел бы синтаксис вида function sum($a, $b) = $a+$b;. Наболело.
Об ООП сказано много. Итог один, it sucks. В PHP 5 оно всего лишь sucks less. Python в данном плане намного лучше, там абсолютно все суть объекты (хотя никто не просит применять парадигму в явном виде). В PHP разработчики постарались сделать так, что используя ООП, ты ни на секунду не забываешь, что используешь именно ООП, и что это жутчайший костыль.
Ну и в конце концов то, что core в PHP насчитывает несколько тысяч функций, то, что все они находятся в глобальном пространстве имен, а также то, что ни PHP 4, ни PHP 5 не содержат концепции пространств имен, ставит в зачОтке PHP жирный минус.
Need we say less? Тем не менее, на PHP можно писать и хороший код. Главное, не смотреть на "бисплатные скрепты ат наченаюсчих" и иметь хороший бэкграунд как в других языках программирования, так и в разных подходах к программированию в целом.
(c) shimon
Скажем так, я уже третий год жизни транжирю на работу с этим языком. И мое накопленное этими годами неудовольствие скорее оправдано, чем наоборот.
Во-первых, встать именно по языковым возможностям хоть на сантиметр ближе к языкам "общего назначения", таким, как Python или Ruby, PHP не сможет раньше шестой версии. Пятая ветка -- это скорее переходной этап, как что-то полноценное я ее рассматривать не берусь. Это во-первых. А во-вторых, быдлохостинги вовсю используют четверку, и это гуано мне тычут как требование в ТЗ.
Гуанистость проявляется собственно вот в чем.
Язык у нас ориентирован на веб. А раз так, то он должен облегчать веб-разработку до максимума. Тем не менее, стандартного фреймворка для хотя бы того же MVC там просто нет. Либо пиши свое, либо рассматривай вагон и тележку готовых, каждую со своими сдвигами по фазе.
Впрочем, это не предвидится и в следующих версиях. Блин, Ruby ни разу не веб-язык, но Rails у него есть, причем как стандарт де факто!
Во-вторых. Часто нужные функции array_map, array_filter и прочие жутко неудобны потому, что создавать анонимные функции неудобно. А создавать анонимные функции (через create_function()) неудобно потому, что Zend не позволяет от них избавиться. Для них unset() не пашет, даже если ты можешь доказать, что эта функция никогда больше тебе не понадобится.
В связи с этим еще одна фень. Функции в рантайме можно задавать только через строки. В Javascript это в разы лучше.
Результат работы некоторых функций нужно предварительно помещать в переменную, а уж потом что-то с ней делать. Когда так делать, а когда нет, на поверхности отнюдь не плавает, изменяется от версии к версии и заставляет лезть в букварь на каждый чих.
Лично моя придирка, если функцию можно задать как одно выражение, я хотел бы синтаксис вида function sum($a, $b) = $a+$b;. Наболело.
Об ООП сказано много. Итог один, it sucks. В PHP 5 оно всего лишь sucks less. Python в данном плане намного лучше, там абсолютно все суть объекты (хотя никто не просит применять парадигму в явном виде). В PHP разработчики постарались сделать так, что используя ООП, ты ни на секунду не забываешь, что используешь именно ООП, и что это жутчайший костыль.
Ну и в конце концов то, что core в PHP насчитывает несколько тысяч функций, то, что все они находятся в глобальном пространстве имен, а также то, что ни PHP 4, ни PHP 5 не содержат концепции пространств имен, ставит в зачОтке PHP жирный минус.
Need we say less? Тем не менее, на PHP можно писать и хороший код. Главное, не смотреть на "бисплатные скрепты ат наченаюсчих" и иметь хороший бэкграунд как в других языках программирования, так и в разных подходах к программированию в целом.
(c) shimon
п.с. RoR дай своему начинающему.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 01.09.06 10:38
вот основная мысль, за которую зацепится *мой начинающий* :-)
Он все это прочитает и спросит, так на чем мне писать, если у хостера только поддержка PHP?
Вот это уже ближе к нашей теме :-)
И сие реально только если учиться у *правильных* источников. Читай *хорошие книги*, *хорошие исходники*.
В данной ситуации я не вижу для него никакого выхода ( замуровали демоны! 8-) ). Имея в *дано* хостера с поддержкой php особо не порыпаешься.
Я бы сам с удовольствием убежал к хостеру с поддержкой C# (ASP.NET 2.0), но посмотрев на цены.....решил и дальше играться С#-ом в интранете фирмы и дома :-)
в ответ voxel3d 01.09.06 10:19
В ответ на:
во-вторых, быдлохостинги вовсю используют четверку
во-вторых, быдлохостинги вовсю используют четверку
вот основная мысль, за которую зацепится *мой начинающий* :-)
Он все это прочитает и спросит, так на чем мне писать, если у хостера только поддержка PHP?
В ответ на:
Тем не менее, на ПХП можно писать и хороший код.
Тем не менее, на ПХП можно писать и хороший код.
Вот это уже ближе к нашей теме :-)
И сие реально только если учиться у *правильных* источников. Читай *хорошие книги*, *хорошие исходники*.
В данной ситуации я не вижу для него никакого выхода ( замуровали демоны! 8-) ). Имея в *дано* хостера с поддержкой php особо не порыпаешься.
Я бы сам с удовольствием убежал к хостеру с поддержкой C# (ASP.NET 2.0), но посмотрев на цены.....решил и дальше играться С#-ом в интранете фирмы и дома :-)
NEW 01.09.06 11:07
в ответ Murr 01.09.06 10:48
та сможет, конечно.
Он там что-то с javascript'ом мутит. С циклами :-))
Я, кстати, как-то заикнулся по поводу XML, XSLT...но это у него как-то не нашло отклика:-)
Хочет *по-всрослому* ;-))
Кстати, так как быть с PHP-никами, которые хотят освоить ООП?
Говорят, что читают там какую-то инфу .... ведь PHP уже поддерживает *это* 8-) ... а понять не могут.
Есть такие, у кого PHP - *основной* язык и смог освоить ООП? Признавайтесь, как :-)
Он там что-то с javascript'ом мутит. С циклами :-))
Я, кстати, как-то заикнулся по поводу XML, XSLT...но это у него как-то не нашло отклика:-)
Хочет *по-всрослому* ;-))
Кстати, так как быть с PHP-никами, которые хотят освоить ООП?
Говорят, что читают там какую-то инфу .... ведь PHP уже поддерживает *это* 8-) ... а понять не могут.
Есть такие, у кого PHP - *основной* язык и смог освоить ООП? Признавайтесь, как :-)
NEW 01.09.06 12:06
в ответ Tomasson 01.09.06 11:07
> Кстати, так как быть с PHP-никами, которые хотят освоить ООП?
Если бы я Буча асилил, то сказал бы: "Ну, дай им, что ли, Буча почитать", но посколько я его так и не асилил, в силу редкостного занудства и сплошной тягомотины в книге, то бедные пыхапэшники ООП так и не изучат.
Если бы я Буча асилил, то сказал бы: "Ну, дай им, что ли, Буча почитать", но посколько я его так и не асилил, в силу редкостного занудства и сплошной тягомотины в книге, то бедные пыхапэшники ООП так и не изучат.

Dropbox - средство синхронизации и бэкапа файлов.
NEW 01.09.06 12:18
в ответ Tomasson 01.09.06 11:07
Вот здесь, достаточно хорошо про OOP в PHP. http://www.bhv.ru/books/book.php?id=6643
Это про PHP4 http://www.zipsites.ru/books/php4/
Это сайт Котерова (автора) http://www.dklab.ru/
Ч╦ воды столько налили? Книги где?
Это про PHP4 http://www.zipsites.ru/books/php4/
Это сайт Котерова (автора) http://www.dklab.ru/
Ч╦ воды столько налили? Книги где?
NEW 01.09.06 15:33
в ответ Tomasson 01.09.06 11:07
та сможет, конечно.
-------
Т.е. Утверждается, что _программировать_ - составлять алгоритмы обработки данных и записывать их на каком-то языке _уже_ умеет. Зачем ему базовая литература?
Кстати, так как быть с PHP-никами, которые хотят освоить ООП?
------
Переучить на VB 6.0... и тихонечко перестрелять...
Если чуть серьезнее - сегодня полдня убил на то, чтобы объяснить, как раскидать заданный XML-документ на классы... в соответствии с ООП. Мне все время кивали на босовский код... в котором я попутно правлю баги и добавляю фичи... который не-совсем-ООП... хммм... если говорить правду - совсем не ООП... Так что - переучивать и расстереливать...
-------
Т.е. Утверждается, что _программировать_ - составлять алгоритмы обработки данных и записывать их на каком-то языке _уже_ умеет. Зачем ему базовая литература?
Кстати, так как быть с PHP-никами, которые хотят освоить ООП?
------
Переучить на VB 6.0... и тихонечко перестрелять...


NEW 03.09.06 04:05
в ответ Tomasson 01.09.06 09:35
Ок, давайте лит-ру по любому языку. Пусть даже по этому ужасному С++ :-)
Только такую, чтобы не отбить у человека желание обучаться :-)
С++ для начинающих только Кёниг - http://www.amazon.de/Intensivkurs-Schneller-Einstieg-%fcber-Standardbibliothek/d...
Только такую, чтобы не отбить у человека желание обучаться :-)
С++ для начинающих только Кёниг - http://www.amazon.de/Intensivkurs-Schneller-Einstieg-%fcber-Standardbibliothek/d...
NEW 03.09.06 17:24
в ответ voxel3d 01.09.06 10:19
NEW 03.09.06 23:55
Внести такое использование слова auto в стандарт предложили Bjarne Stroustrup и Jaakko Järvi:
http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2004/n1607.pdf#search=%22N1607%22 5.2 Functions with implicit return types
То есть это не совсем фантастика вроде чтения мыслей компиляторами.
в ответ voxel3d 03.09.06 23:41
В ответ на:
Нет, не будет, поэтому, то, что Вы привели, будет работать неправильно.
Нет, не будет, поэтому, то, что Вы привели, будет работать неправильно.
Внести такое использование слова auto в стандарт предложили Bjarne Stroustrup и Jaakko Järvi:
http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2004/n1607.pdf#search=%22N1607%22 5.2 Functions with implicit return types
То есть это не совсем фантастика вроде чтения мыслей компиляторами.
NEW 04.09.06 00:12
Ну, и? Тип возвращаемого значения функции предлагается выводить по типу того, что попадает в оперетор return. Внутри функции, один хрен, будет происходить:
тип_левого_операнда.operator<((тип_левого_операнда)правый_операнд), (я про пример Ваш)
поэтому, работать оно будет неправильно.
тип_левого_операнда.operator<((тип_левого_операнда)правый_операнд), (я про пример Ваш)
поэтому, работать оно будет неправильно.

Dropbox - средство синхронизации и бэкапа файлов.
NEW 04.09.06 00:32
в ответ voxel3d 04.09.06 00:27
5.16 Conditional operator [expr.cond]
conditional-expression:
logical-or-expression
logical-or-expression ? expression : assignment-expression
1 Conditional expressions group right-to-left. The first expression is implicitly converted to bool (clause 4).
It is evaluated and if it is true, the result of the conditional expression is the value of the second expression,
otherwise that of the third expression. All side effects of the first expression except for destruction of
temporaries (12.2) happen before the second or third expression is evaluated. Only one of the second and
third expressions is evaluated.
2 If either the second or the third operand has type (possibly cv-qualified) void, then the lvalue-to-rvalue
(4.1), array-to-pointer (4.2), and function-to-pointer (4.3) standard conversions are performed on the second
and third operands, and one of the following shall hold:
- The second or the third operand (but not both) is a throw-expression (15.1); the result is of the type of
the other and is an rvalue.
- Both the second and the third operands have type void; the result is of type void and is an rvalue.
[Note: this includes the case where both operands are throw-expressions. ]
3 Otherwise, if the second and third operand have different types, and either has (possibly cv-qualified) class
type, an attempt is made to convert each of those operands to the type of the other. The process for determining
whether an operand expression E1 of type T1 can be converted to match an operand expression E2
of type T2 is defined as follows:
- If E2 is an lvalue: E1 can be converted to match E2 if E1 can be implicitly converted (clause 4) to the
type ⌠reference to T2■, subject to the constraint that in the conversion the reference must bind directly
(8.5.3) to E1.
- If E2 is an rvalue, or if the conversion above cannot be done:
- if E1 and E2 have class type, and the underlying class types are the same or one is a base class of
the other: E1 can be converted to match E2 if the class of T2 is the same type as, or a base class of,
the class of T1, and the cv-qualification of T2 is the same cv-qualification as, or a greater cvqualification
than, the cv-qualification of T1. If the conversion is applied, E1 is changed to an
rvalue of type T2 that still refers to the original source class object (or the appropriate subobject
thereof). [Note: that is, no copy is made. ]
- Otherwise (i.e., if E1 or E2 has a nonclass type, or if they both have class types but the underlying
classes are not either the same or one a base class of the other): E1 can be converted to match E2 if
E1 can be implicitly converted to the type that expression E2 would have if E2 were converted to an
rvalue (or the type it has, if E2 is an rvalue).
Using this process, it is determined whether the second operand can be converted to match the third
operand, and whether the third operand can be converted to match the second operand. If both can be converted,
or one can be converted but the conversion is ambiguous, the program is ill-formed. If neither can
be converted, the operands are left unchanged and further checking is performed as described below. If
exactly one conversion is possible, that conversion is applied to the chosen operand and the converted
operand is used in place of the original operand for the remainder of this section.
4 If the second and third operands are lvalues and have the same type, the result is of that type and is an
lvalue.
5 Otherwise, the result is an rvalue. If the second and third operand do not have the same type, and either has
(possibly cv-qualified) class type, overload resolution is used to determine the conversions (if any) to be
applied to the operands (13.3.1.2, 13.6). If the overload resolution fails, the program is ill-formed. Otherwise,
the conversions thus determined are applied, and the converted operands are used in place of the original
operands for the remainder of this section.
6 Lvalue-to-rvalue (4.1), array-to-pointer (4.2), and function-to-pointer (4.3) standard conversions are performed
on the second and third operands. After those conversions, one of the following shall hold:
- The second and third operands have the same type; the result is of that type.
- The second and third operands have arithmetic or enumeration type; the usual arithmetic conversions
are performed to bring them to a common type, and the result is of that type.
- The second and third operands have pointer type, or one has pointer type and the other is a null pointer
constant; pointer conversions (4.10) and qualification conversions (4.4) are performed to bring them to
their composite pointer type (5.9). The result is of the composite pointer type.
- The second and third operands have pointer to member type, or one has pointer to member type and the
other is a null pointer constant; pointer to member conversions (4.11) and qualification conversions
(4.4) are performed to bring them to a common type, whose cv-qualification shall match the cvqualification
of either the second or the third operand. The result is of the common type.
conditional-expression:
logical-or-expression
logical-or-expression ? expression : assignment-expression
1 Conditional expressions group right-to-left. The first expression is implicitly converted to bool (clause 4).
It is evaluated and if it is true, the result of the conditional expression is the value of the second expression,
otherwise that of the third expression. All side effects of the first expression except for destruction of
temporaries (12.2) happen before the second or third expression is evaluated. Only one of the second and
third expressions is evaluated.
2 If either the second or the third operand has type (possibly cv-qualified) void, then the lvalue-to-rvalue
(4.1), array-to-pointer (4.2), and function-to-pointer (4.3) standard conversions are performed on the second
and third operands, and one of the following shall hold:
- The second or the third operand (but not both) is a throw-expression (15.1); the result is of the type of
the other and is an rvalue.
- Both the second and the third operands have type void; the result is of type void and is an rvalue.
[Note: this includes the case where both operands are throw-expressions. ]
3 Otherwise, if the second and third operand have different types, and either has (possibly cv-qualified) class
type, an attempt is made to convert each of those operands to the type of the other. The process for determining
whether an operand expression E1 of type T1 can be converted to match an operand expression E2
of type T2 is defined as follows:
- If E2 is an lvalue: E1 can be converted to match E2 if E1 can be implicitly converted (clause 4) to the
type ⌠reference to T2■, subject to the constraint that in the conversion the reference must bind directly
(8.5.3) to E1.
- If E2 is an rvalue, or if the conversion above cannot be done:
- if E1 and E2 have class type, and the underlying class types are the same or one is a base class of
the other: E1 can be converted to match E2 if the class of T2 is the same type as, or a base class of,
the class of T1, and the cv-qualification of T2 is the same cv-qualification as, or a greater cvqualification
than, the cv-qualification of T1. If the conversion is applied, E1 is changed to an
rvalue of type T2 that still refers to the original source class object (or the appropriate subobject
thereof). [Note: that is, no copy is made. ]
- Otherwise (i.e., if E1 or E2 has a nonclass type, or if they both have class types but the underlying
classes are not either the same or one a base class of the other): E1 can be converted to match E2 if
E1 can be implicitly converted to the type that expression E2 would have if E2 were converted to an
rvalue (or the type it has, if E2 is an rvalue).
Using this process, it is determined whether the second operand can be converted to match the third
operand, and whether the third operand can be converted to match the second operand. If both can be converted,
or one can be converted but the conversion is ambiguous, the program is ill-formed. If neither can
be converted, the operands are left unchanged and further checking is performed as described below. If
exactly one conversion is possible, that conversion is applied to the chosen operand and the converted
operand is used in place of the original operand for the remainder of this section.
4 If the second and third operands are lvalues and have the same type, the result is of that type and is an
lvalue.
5 Otherwise, the result is an rvalue. If the second and third operand do not have the same type, and either has
(possibly cv-qualified) class type, overload resolution is used to determine the conversions (if any) to be
applied to the operands (13.3.1.2, 13.6). If the overload resolution fails, the program is ill-formed. Otherwise,
the conversions thus determined are applied, and the converted operands are used in place of the original
operands for the remainder of this section.
6 Lvalue-to-rvalue (4.1), array-to-pointer (4.2), and function-to-pointer (4.3) standard conversions are performed
on the second and third operands. After those conversions, one of the following shall hold:
- The second and third operands have the same type; the result is of that type.
- The second and third operands have arithmetic or enumeration type; the usual arithmetic conversions
are performed to bring them to a common type, and the result is of that type.
- The second and third operands have pointer type, or one has pointer type and the other is a null pointer
constant; pointer conversions (4.10) and qualification conversions (4.4) are performed to bring them to
their composite pointer type (5.9). The result is of the composite pointer type.
- The second and third operands have pointer to member type, or one has pointer to member type and the
other is a null pointer constant; pointer to member conversions (4.11) and qualification conversions
(4.4) are performed to bring them to a common type, whose cv-qualification shall match the cvqualification
of either the second or the third operand. The result is of the common type.
NEW 04.09.06 00:42
Зачем столько цитировать? Там нас интересует только
Что отсылает нас к 5(9):
Во-вторых, при чём тут всё это?
В ответ на:
After those conversions, one of the following shall hold:
- The second and third operands have the same type; the result is of that type.
- The second and third operands have arithmetic or enumeration type; the usual arithmetic conversions are performed to bring them to a common type, and the result is of that type.
After those conversions, one of the following shall hold:
- The second and third operands have the same type; the result is of that type.
- The second and third operands have arithmetic or enumeration type; the usual arithmetic conversions are performed to bring them to a common type, and the result is of that type.
Что отсылает нас к 5(9):
В ответ на:
Many binary operators that expect operands of arithmetic or enumeration type cause conversions and yield result types in a similar way. The purpose is to yield a common type, which is also the type of the result.
This pattern is called the usual arithmetic conversions, which are defined as follows:
- If either operand is of type long double, the other shall be converted to long double.
- Otherwise, if either operand is double, the other shall be converted to double.
...
Many binary operators that expect operands of arithmetic or enumeration type cause conversions and yield result types in a similar way. The purpose is to yield a common type, which is also the type of the result.
This pattern is called the usual arithmetic conversions, which are defined as follows:
- If either operand is of type long double, the other shall be converted to long double.
- Otherwise, if either operand is double, the other shall be converted to double.
...
Во-вторых, при чём тут всё это?
NEW 04.09.06 00:57
Угу, только ещё надо добавить, что в операторе ?: вычисляется первое выражение и его тип приводится к bool. Всё остальное описание в 5.16 - о правилах выведения типа конечного результата и к процессу вычисления первого логического выражения отношения не имеет.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 04.09.06 01:01
Может быть чтобы ответить на такой вопрос:
И убедиться в том, что его можно откомпилировать только одним способом.
в ответ scorpi_ 04.09.06 00:42
В ответ на:
Во-вторых, при ч╦м тут вс╦ это?
Во-вторых, при ч╦м тут вс╦ это?
Может быть чтобы ответить на такой вопрос:
В ответ на:
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int.
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int.
И убедиться в том, что его можно откомпилировать только одним способом.
NEW 04.09.06 01:07
Прошу прощения за неясности. Конечно же 5.16 имеет отношение не к определению типа (left < right), а к определению типа (left < right ? right : left). Значение именно этого выражения возвращает return.
в ответ voxel3d 04.09.06 00:57
В ответ на:
Вс╦ остальное описание в 5.16 - о правилах выведения типа конечного результата и к процессу вычисления первого логического выражения отношения не имеет.
Вс╦ остальное описание в 5.16 - о правилах выведения типа конечного результата и к процессу вычисления первого логического выражения отношения не имеет.
Прошу прощения за неясности. Конечно же 5.16 имеет отношение не к определению типа (left < right), а к определению типа (left < right ? right : left). Значение именно этого выражения возвращает return.
NEW 04.09.06 01:15
в ответ igna 04.09.06 01:01
Мой вопрос относился ко всей серии Ваших постингов, которые к теме вообще непонятно каким образом относятся.
Во-вторых если учесть, что Вы С++ всё ж немного знаете, я расцениваю Ваши постинги как чистейший воды флейм, непонятно для чего затеянный, и непонятно что Вы хотели доказать...
В-третьих у нас всё же template arguments, а не просто conditional operator, поэтому весь Ваш флейм мимо кассы.
Во-вторых если учесть, что Вы С++ всё ж немного знаете, я расцениваю Ваши постинги как чистейший воды флейм, непонятно для чего затеянный, и непонятно что Вы хотели доказать...
В-третьих у нас всё же template arguments, а не просто conditional operator, поэтому весь Ваш флейм мимо кассы.
NEW 04.09.06 01:20
Вот этот вопрос?:
И какой же именно код в каком данном случае можно откомпилировать двумя способами?
в ответ scorpi_ 04.09.06 01:15
В ответ на:
Мой вопрос относился ко всей серии Ваших постингов
Мой вопрос относился ко всей серии Ваших постингов
Вот этот вопрос?:
В ответ на:
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int.
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int.
И какой же именно код в каком данном случае можно откомпилировать двумя способами?
NEW 04.09.06 01:23
> Это 5.9.2 - Relational operators The usual arithmetic conversions are performed on operands of arithmetic or enumeration type. Так что всё равно всё приводится к double.
Завтра на работе прочитаю, сейчас не буду стандарт выкачивать, спать пора. Хочу только сказать, что нифига к double не приводится у меня на gcc
, а всё обрезается до int, если при вызове слева стоит int, a справа double.
p.s. В варианте с двумя шаблонными параметрами, который предложил igna.
Завтра на работе прочитаю, сейчас не буду стандарт выкачивать, спать пора. Хочу только сказать, что нифига к double не приводится у меня на gcc

p.s. В варианте с двумя шаблонными параметрами, который предложил igna.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 04.09.06 01:38
Похоже, что стандартный C от C++ в этом месте не отличается:
6.5.8 Relational operators
. . .
3 If both of the operands have arithmetic type, the usual arithmetic conversions are performed.
А точно, (1 < 1.1) gcc вычисляет как 0 или false?
в ответ voxel3d 04.09.06 01:23
В ответ на:
Хочу только сказать, что нифига к double не приводится у меня на gcc , а вс╦ обрезается до int, если при вызове слева стоит int, a справа double.
Хочу только сказать, что нифига к double не приводится у меня на gcc , а вс╦ обрезается до int, если при вызове слева стоит int, a справа double.
Похоже, что стандартный C от C++ в этом месте не отличается:
6.5.8 Relational operators
. . .
3 If both of the operands have arithmetic type, the usual arithmetic conversions are performed.
А точно, (1 < 1.1) gcc вычисляет как 0 или false?
NEW 04.09.06 01:39
в ответ scorpi_ 04.09.06 01:31
Хм, я не знаю. Тут у тебя, похоже к double приводится левый операнд. У меня ругается: Warning: converting to `const int' from `double` на строке сравнения в шаблоне, т.е. там он приводит double к int.
Ладно, всем спокойной ночи.
Ладно, всем спокойной ночи.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 04.09.06 02:10
Какой код, max(1, 1.1)? Конечно.
Но вот ты задал вопрос
в ответ на мое
в ответ scorpi_ 04.09.06 01:28
В ответ на:
Короче твой код ill-formed, ибо компилятор не знает поставить ли ему T = int или T = double.
Короче твой код ill-formed, ибо компилятор не знает поставить ли ему T = int или T = double.
Какой код, max(1, 1.1)? Конечно.
Но вот ты задал вопрос
В ответ на:
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int. Вам какой из? Откуда должен компилятор знать, какой вариант Вас интересует?
Видите ли, этот код в данном случае можно откомпилировать двумя способами - либо сравнивая double c double, либо int c int. Вам какой из? Откуда должен компилятор знать, какой вариант Вас интересует?
в ответ на мое
В ответ на:
Будет ли считаться читающим мысли компилятор способный откомпилировать следующее:
Будет ли считаться читающим мысли компилятор способный откомпилировать следующее:
template<class T1, class T2> inline
const auto& max( const T1& left, const T2& right )
{
return left < right ? right : left;
}
NEW 04.09.06 12:57
в ответ Tomasson 04.09.06 12:52
P.S. смысл этой ветки был в том, чтобы собрать список литературы, а не вдаваться в очередной спор, какой язык лучше и в чем.
Так, чтобы чел зашел, нашел интересующий его язык/тему и начал искать книгу. А читать все эти хитров***анные тексты ему не составит никакого интереса. Они его только отпугнут :-)
Так, чтобы чел зашел, нашел интересующий его язык/тему и начал искать книгу. А читать все эти хитров***анные тексты ему не составит никакого интереса. Они его только отпугнут :-)
NEW 04.09.06 13:50
в ответ Tomasson 30.08.06 16:32
C++
Anfänger:
--- Andrew Koenig, Barbara E. Moo - "Accelerated C++" (http://www.amazon.de/Accelerated-C%2b%2b-Practical-Programming-Example/dp/020170...)
--- Nicolai Josuttis - "C++ Standard Library - A Tutorial and Reference" (http://www.amazon.de/C%2b%2b-Standard-Library-Tutorial-Reference/dp/0201379260/)
--- Scott Meyers - "Effective C++" (http://www.amazon.de/Effektiv-C%2b%2b-programmieren-Scott-Meyers/dp/3827322979/)
--- Scott Meyers - "More Effective C++" (http://www.amazon.de/Effektiv-programmieren-Verbesserung-Programme-Entw%fcrfe/dp...)
Fortgeschrittene:
--- Scott Meyers - "Effective STL" (http://www.amazon.de/Effective-STL-Scott-Meyers/dp/0201749629/)
--- Herb Sutter - "Exceptional C++" (http://www.amazon.de/Exceptional-C%2b%2b-Engineering-Programming-Solutions/dp/02...)
--- Herb Sutter - "More Exceptional C++" (http://www.amazon.de/More-Exceptional-C%2b%2b-Engineering-Programming/dp/0201704...)
--- Herb Sutter - "Exceptional C++ Style" (http://www.amazon.de/Exceptional-C%2b%2b-Style-Herb-Sutter/dp/0201760428/)
--- Herb Sutter, Andrei Alexandrescu - "C++ Coding Standards: 101 Rules, Guidelines, and Best Practices" (http://www.amazon.de/Coding-Standards-Rules-Guidelines-Practices/dp/0321113586/)
Profi:
--- David Vandevoorde, Nicolai M. Josuttis - "C++ Templates: The Complete Guide" (http://www.amazon.de/C%2b%2b-Templates-Complete-David-Vandervoorde/dp/0201734842...)
--- David Abrahams, Aleksey Gurtovoy - "C++ Template Metaprogramming" (http://www.amazon.de/Template-Metaprogramming-Concepts-Techniques-Beyond/dp/0321...)
--- Alexandrescu - "Modern C++ Design" (http://www.amazon.de/Modernes-Generische-Programmierung-Entwurfsmuster-angewende...)
--- "ISO/IEC 14482 - C++ Standard" (http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38110&ICS...)
PS Надо бы пожалуй новую тему открыть, приклеить е╦ и попросить Игоря безжалостно тереть весь оффтоп...
Anfänger:
--- Andrew Koenig, Barbara E. Moo - "Accelerated C++" (http://www.amazon.de/Accelerated-C%2b%2b-Practical-Programming-Example/dp/020170...)
--- Nicolai Josuttis - "C++ Standard Library - A Tutorial and Reference" (http://www.amazon.de/C%2b%2b-Standard-Library-Tutorial-Reference/dp/0201379260/)
--- Scott Meyers - "Effective C++" (http://www.amazon.de/Effektiv-C%2b%2b-programmieren-Scott-Meyers/dp/3827322979/)
--- Scott Meyers - "More Effective C++" (http://www.amazon.de/Effektiv-programmieren-Verbesserung-Programme-Entw%fcrfe/dp...)
Fortgeschrittene:
--- Scott Meyers - "Effective STL" (http://www.amazon.de/Effective-STL-Scott-Meyers/dp/0201749629/)
--- Herb Sutter - "Exceptional C++" (http://www.amazon.de/Exceptional-C%2b%2b-Engineering-Programming-Solutions/dp/02...)
--- Herb Sutter - "More Exceptional C++" (http://www.amazon.de/More-Exceptional-C%2b%2b-Engineering-Programming/dp/0201704...)
--- Herb Sutter - "Exceptional C++ Style" (http://www.amazon.de/Exceptional-C%2b%2b-Style-Herb-Sutter/dp/0201760428/)
--- Herb Sutter, Andrei Alexandrescu - "C++ Coding Standards: 101 Rules, Guidelines, and Best Practices" (http://www.amazon.de/Coding-Standards-Rules-Guidelines-Practices/dp/0321113586/)
Profi:
--- David Vandevoorde, Nicolai M. Josuttis - "C++ Templates: The Complete Guide" (http://www.amazon.de/C%2b%2b-Templates-Complete-David-Vandervoorde/dp/0201734842...)
--- David Abrahams, Aleksey Gurtovoy - "C++ Template Metaprogramming" (http://www.amazon.de/Template-Metaprogramming-Concepts-Techniques-Beyond/dp/0321...)
--- Alexandrescu - "Modern C++ Design" (http://www.amazon.de/Modernes-Generische-Programmierung-Entwurfsmuster-angewende...)
--- "ISO/IEC 14482 - C++ Standard" (http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38110&ICS...)
PS Надо бы пожалуй новую тему открыть, приклеить е╦ и попросить Игоря безжалостно тереть весь оффтоп...
NEW 04.09.06 14:03
в ответ voxel3d 04.09.06 13:57
Ладно, пусть будет
--- Jeff Alger - "C++ for Real Programmers" (http://www.amazon.de/C%2b%2b-Real-Programmers/dp/0120499428/)
--- Jeff Alger - "C++ for Real Programmers" (http://www.amazon.de/C%2b%2b-Real-Programmers/dp/0120499428/)
NEW 04.09.06 14:06
HTML (Там же JavaScript и CSS) правда не книга, но очень хорошее электронное пособие.
http://de.selfhtml.org/ - Online версия
http://aktuell.de.selfhtml.org/extras/download.shtml - Страница закачки Offline версий в html формате
http://aktuell.de.selfhtml.org/extras/selfchm.htm - Страница закачки Offline версий в chm формате
http://de.selfhtml.org/ - Online версия
http://aktuell.de.selfhtml.org/extras/download.shtml - Страница закачки Offline версий в html формате
http://aktuell.de.selfhtml.org/extras/selfchm.htm - Страница закачки Offline версий в chm формате
NEW 04.09.06 14:32
в ответ scorpi_ 04.09.06 13:50
пусть будет, тоже ведь полезные вещи написаны.
просто потом кто-нибудь может открыть новую ветку с прямыми ссылками на литературу и потом дополнять е╦ по мере надобности. ветка будет закрыта и прикреплена, так что офтопа там точно не будет. что нибудь вроде "Ссылки для новичков" http://foren.germany.ru/linux/f/2385061.html, имеется в виду по внешнему виду и исполнению.
просто потом кто-нибудь может открыть новую ветку с прямыми ссылками на литературу и потом дополнять е╦ по мере надобности. ветка будет закрыта и прикреплена, так что офтопа там точно не будет. что нибудь вроде "Ссылки для новичков" http://foren.germany.ru/linux/f/2385061.html, имеется в виду по внешнему виду и исполнению.
здесь могла бы быть моя автоподпись
NEW 04.09.06 16:08
в ответ scorpi_ 04.09.06 14:48
тоже верно.. я буду посматривать, вс╦ что не по теме буду убирать, если что закрыть можно в любой момент.
название ветки на усмотрение автора, если кроме книг там ещ╦ полезности будут, то FAQ вполне подходяще конечно
название ветки на усмотрение автора, если кроме книг там ещ╦ полезности будут, то FAQ вполне подходяще конечно
здесь могла бы быть моя автоподпись
NEW 04.09.06 16:36
Это ИМХО полнейшее фуфло
опять же *для кого?* :-)
Как по мне, для новичка самое то. Не пугает, написано увлекательно :-)
На первую книгу о С++ абсолютно подходит. У человека хоть интерес к последующему обучению остается.
Хотя возможно, что в одной из приведенных тобой книг обьясняется все не хуже и *без испуга* читателя :-)
опять же *для кого?* :-)
Как по мне, для новичка самое то. Не пугает, написано увлекательно :-)
На первую книгу о С++ абсолютно подходит. У человека хоть интерес к последующему обучению остается.
Хотя возможно, что в одной из приведенных тобой книг обьясняется все не хуже и *без испуга* читателя :-)
NEW 04.09.06 18:31
в ответ scorpi_ 04.09.06 13:50
Не знаю, отнесется ли это к *началам* :-)
если да, то можно добавить в FAQ.
UML
--- Christoph Kecher *UML 2.0. Das umfassende Handbuch* (http://www.amazon.de/UML-2-0-Das-umfassende-Handbuch/dp/3898427382)
На немецком языке с примерами на Java и C#
Design Patterns
--- Elisabeth Freeman *Head First Design Patterns* (http://www.amazon.com/First-Design-Patterns-Elisabeth-Freeman/dp/0596007124)
либо на немецком:
--- Eric Freeman *Entwurfsmuster von Kopf bis Fuß* (http://www.amazon.de/Entwurfsmuster-von-Kopf-bis-Fu%df/dp/3897214210)
если да, то можно добавить в FAQ.
UML
--- Christoph Kecher *UML 2.0. Das umfassende Handbuch* (http://www.amazon.de/UML-2-0-Das-umfassende-Handbuch/dp/3898427382)
На немецком языке с примерами на Java и C#
Design Patterns
--- Elisabeth Freeman *Head First Design Patterns* (http://www.amazon.com/First-Design-Patterns-Elisabeth-Freeman/dp/0596007124)
либо на немецком:
--- Eric Freeman *Entwurfsmuster von Kopf bis Fuß* (http://www.amazon.de/Entwurfsmuster-von-Kopf-bis-Fu%df/dp/3897214210)
NEW 04.09.06 21:20
в ответ Tomasson 04.09.06 16:33
циклы в Java и С# не подходят
------
они у меня в основном такие (в смысле - простых - for - в коде _нет_)
public class TMyObject : IMyInt_1, IMyInt_2
{
public void Sample()
{
int count;
count = 0;
foreach(IMyObj_1 obj in this as IMyInt_1)
{
count += 1;
}
// тут насчитали 4
count = 0;
foreach(IMyObj_2 obj in this as IMyInt_2)
{
count += 1;
}
// а тут - 5
} // Sample()
} // class
Единственное, чего не представляю, как тоже самое получить "узкого специалиста" по VB6.0...
------
они у меня в основном такие (в смысле - простых - for - в коде _нет_)
public class TMyObject : IMyInt_1, IMyInt_2
{
public void Sample()
{
int count;
count = 0;
foreach(IMyObj_1 obj in this as IMyInt_1)
{
count += 1;
}
// тут насчитали 4
count = 0;
foreach(IMyObj_2 obj in this as IMyInt_2)
{
count += 1;
}
// а тут - 5

} // Sample()
} // class
Единственное, чего не представляю, как тоже самое получить "узкого специалиста" по VB6.0...

NEW 05.09.06 00:13
в ответ Tomasson 04.09.06 18:31
Я не думаю, что следует ограничиваться только основами, другое дело, что можно разнести список на несколько сообщений по категориям. А в первом сообщении оставить только оглавление.
Приведённые тобой книги я не читал, но я согласен с
voxel3D, что по паттернам достаточно GoF. Для новичков это всё равно рано, а продвинутый программер желающий развиваться дальше должен справится с материалом данного уровня сложности, иначе ему там всё равно делать нечего. То бишь ему надо только показать направление движения, а для этого дастаточно GoF.
По UML надо наверно Фаулера добавить и заодно его Refactoring где-нибудь привести.
В общем надо сейчас разбивку на отделы придумать, потом всё это добавлю
Приведённые тобой книги я не читал, но я согласен с

По UML надо наверно Фаулера добавить и заодно его Refactoring где-нибудь привести.
В общем надо сейчас разбивку на отделы придумать, потом всё это добавлю
I did it my way.
Open Source
проекты для "germany.ru"

NEW 05.09.06 11:59
после GoF с их "Design Patterns" всё остальное порнография, плагиат и не содержит ничего нового.
Тут речь скорее не о чем-то новом, а о способе донести идею до читателя.
Например, футбол придумали англичане, а чемпионами Европы и Мира им стать уже не светит :-Р
Толковых тренеров, которые могут привести команду на вершину, нет.
Заметь, в списке литературы по С++ нет книги Stroustrup'а ;-)
Так что, не зря программеры говорят нечто подобное:
Посему вышеназванную книгу попросил бы оставить. Ибо на сегодняшний день она представляет собой самый легкий путь к пониманию Design Patterns.
Тут речь скорее не о чем-то новом, а о способе донести идею до читателя.
Например, футбол придумали англичане, а чемпионами Европы и Мира им стать уже не светит :-Р
Толковых тренеров, которые могут привести команду на вершину, нет.
Заметь, в списке литературы по С++ нет книги Stroustrup'а ;-)
Так что, не зря программеры говорят нечто подобное:
В ответ на:
Если бы я Буча асилил, то сказал бы: "Ну, дай им, что ли, Буча почитать", но посколько я его так и не асилил
Если бы я Буча асилил, то сказал бы: "Ну, дай им, что ли, Буча почитать", но посколько я его так и не асилил
Посему вышеназванную книгу попросил бы оставить. Ибо на сегодняшний день она представляет собой самый легкий путь к пониманию Design Patterns.
NEW 06.09.06 11:14
в ответ scorpi_ 05.09.06 00:13
Базы данных будем освещать? :-)
если да, то:
MS SQL Server Programming
--- Robert Vieira *Professional SQL Server 2000 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764543792.html)
русский вариант:
--- Роберт Вьейра *SQL Server 2000. Программирование. Часть 1* (http://www.ozon.ru/context/detail/id/1656006/)
--- Роберт Вьейра *SQL Server 2000. Программирование. Часть 2* (http://www.ozon.ru/context/detail/id/1656007/)
--- Robert Vieira *Beginning SQL Server 2005 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764584332.html)
--- Robert Vieira *Professional SQL Server 2005 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764584340.html) (книга еще не вышла, но ее можно будет брать с закрытыми глазами)
Мне был бы интересен еще список по программированию PostgreSQL, Oracle и DB2.
если да, то:
MS SQL Server Programming
--- Robert Vieira *Professional SQL Server 2000 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764543792.html)
русский вариант:
--- Роберт Вьейра *SQL Server 2000. Программирование. Часть 1* (http://www.ozon.ru/context/detail/id/1656006/)
--- Роберт Вьейра *SQL Server 2000. Программирование. Часть 2* (http://www.ozon.ru/context/detail/id/1656007/)
--- Robert Vieira *Beginning SQL Server 2005 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764584332.html)
--- Robert Vieira *Professional SQL Server 2005 Programming* (http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764584340.html) (книга еще не вышла, но ее можно будет брать с закрытыми глазами)
Мне был бы интересен еще список по программированию PostgreSQL, Oracle и DB2.
NEW 06.09.06 19:31
в ответ Tomasson 06.09.06 11:14
Будем, будем. Принято к сведению. Вчера кстати при посещении сайта accu.org увидел книгу для самых маленьких, то бишь для абсолютных новичков: http://brian.accu.org/cgi-bin/accu/rvout.cgi?from=0sb_beginner_s_c__&file=y00368.... Это для раздела "Как стать программистом". Добавить туда ещё что-нибудь по алгоритмам (Седжвик?) и так далее.
NEW 02.10.06 21:24
в ответ Tomasson 30.08.06 16:32
Доки по C/C++:
1. "Справочник советов и примеров по C++ Builder"
Автор:Кононевич Станислав
Size:27 Кб
http://www.biblioteka.net.ru/data/download/cbuilder.chm
2. "Освой самостоятельно С++ за 21 день"
http://alelib.amillo.net/books/0/0/4/4/3/2/C/Liberty-C21Days.djvu
3. Modern C++ Design
Автор:Andrei Alexandrescu
Size:1.2 Mb
http://anatolix.naumen.ru/files/books/moderncpp.zip
+Современное проектирование на C++
Автор:Андрей Александреску
Size:4.1 Mb
http://anatolix.naumen.ru/files/books/moderncppdesign_rus.zip
4. C++ Standard Library, The: A Tutorial and Reference
Автор:Nicolai M. Josuttis
Size:3.5Mb
http://anatolix.naumen.ru/files/books/cppstdlib.zip
5. C++ Templates: The Complete Guide
By David Vandevoorde, Nicolai M. Josuttis
Size:0.7Mb
http://anatolix.naumen.ru/files/books/cpptemplates.zip
6. Effective STL
Автор:Scott Meyers
Size:1.2Mb
http://anatolix.naumen.ru/files/books/effstl.zip
7. International Standart ISO/IEC ISO/IEC 9899:1999 (E)
Programming languages ≈ C
Size:1.1 Mb
http://anatolix.naumen.ru/files/books/iso9899.zip
8. Автор:Brian W. Kernighan, Dennis M. Ritchie
The C programming Language. Second Edition.
Size:170K
http://anatolix.naumen.ru/files/books/kr_eng.zip
Автор:Б. Керниган, Д. Ритчи
Язык программирования Си
Size:300K
http://anatolix.naumen.ru/files/books/kr_rus.zip
http://anatolix.naumen.ru/files/books/kr_tasksolver_eng.zip
9. Автор:Stanley Lippman (Стенли Липпман)
Essential C++(Основы программирования на С++.)
Size:1.2 Mb
http://anatolix.naumen.ru/files/books/lippman_essential_cpp_eng.zip
10. Автор:Stanley Lippman,Josee Lajoie
C++ Primer
Size:2.6 Mb
http://anatolix.naumen.ru/files/books/lippman_cpp_primer_eng.zip
+Автор:Стенли Липпман,Жози Лажойе
Язык программирования С++. Вводный курс
Size:0.8 Mb
http://anatolix.naumen.ru/files/books/lippman_cpp_primer_rus.zip
11. Автор:Herb Sutter
Exceptional C++,
Size:0.3 Mb
http://anatolix.naumen.ru/files/books/exceptional_cpp.zip
More Exceptional C++
Size:0.5 Mb
http://anatolix.naumen.ru/files/books/more_exceptional_cpp.zip
12. Автор:Dov Bulka, David Mayhew
Efficient C++ Performance Programming Techniques
Size:1.5 Mb
http://anatolix.naumen.ru/files/books/efficient_cpp.zip
13. Правила программирования на C и C++
Автор:Allen I. Holub
http://webcenter.ru/~zwb/rope.htm
14. Автор:Bjarne Stroustrup
The C++ Programming Language, Third Edition. Special Edition
Size:3.9 Mb
http://it-books.narod.ru/C_CPP/Stroustrup_eng.rar
Автор:Бьерн Страуструп
Язык программирования C++. 3-е издание. Специальное издание.
Size:2.9 Mb
http://anatolix.naumen.ru/files/books/stroustroup_se.zip
15. Автор:Джефф Элджер
C++ Библиотека программиста
Size:1.8 Mb
http://it-books.narod.ru/C_CPP/CppForRealProgrammers_rus.rar
16. Автор:Scott Meyers
Effective C++, 2nd Edition: 50 Specific Ways to Improve Your Programs and
Designs
Size:4.1 Mb
http://it-books.narod.ru/C_CPP/effectivecpp_moreeffectivecpp.rar
17. Автор:Scott Meyers
More Effective C++: 35 More Ways to Improve Your Programs and Designs
Size:4.1 Mb
http://it-books.narod.ru/C_CPP/effectivecpp_moreeffectivecpp.rar
18. INTERNATIONAL STANDARD
Programming languages - C++ ISO/ANSI/EIC
Size:2.3 Mb
http://it-books.narod.ru/C_CPP/AnsiStandart_eng.rar
1. "Справочник советов и примеров по C++ Builder"
Автор:Кононевич Станислав
Size:27 Кб
http://www.biblioteka.net.ru/data/download/cbuilder.chm
2. "Освой самостоятельно С++ за 21 день"
http://alelib.amillo.net/books/0/0/4/4/3/2/C/Liberty-C21Days.djvu
3. Modern C++ Design
Автор:Andrei Alexandrescu
Size:1.2 Mb
http://anatolix.naumen.ru/files/books/moderncpp.zip
+Современное проектирование на C++
Автор:Андрей Александреску
Size:4.1 Mb
http://anatolix.naumen.ru/files/books/moderncppdesign_rus.zip
4. C++ Standard Library, The: A Tutorial and Reference
Автор:Nicolai M. Josuttis
Size:3.5Mb
http://anatolix.naumen.ru/files/books/cppstdlib.zip
5. C++ Templates: The Complete Guide
By David Vandevoorde, Nicolai M. Josuttis
Size:0.7Mb
http://anatolix.naumen.ru/files/books/cpptemplates.zip
6. Effective STL
Автор:Scott Meyers
Size:1.2Mb
http://anatolix.naumen.ru/files/books/effstl.zip
7. International Standart ISO/IEC ISO/IEC 9899:1999 (E)
Programming languages ≈ C
Size:1.1 Mb
http://anatolix.naumen.ru/files/books/iso9899.zip
8. Автор:Brian W. Kernighan, Dennis M. Ritchie
The C programming Language. Second Edition.
Size:170K
http://anatolix.naumen.ru/files/books/kr_eng.zip
Автор:Б. Керниган, Д. Ритчи
Язык программирования Си
Size:300K
http://anatolix.naumen.ru/files/books/kr_rus.zip
http://anatolix.naumen.ru/files/books/kr_tasksolver_eng.zip
9. Автор:Stanley Lippman (Стенли Липпман)
Essential C++(Основы программирования на С++.)
Size:1.2 Mb
http://anatolix.naumen.ru/files/books/lippman_essential_cpp_eng.zip
10. Автор:Stanley Lippman,Josee Lajoie
C++ Primer
Size:2.6 Mb
http://anatolix.naumen.ru/files/books/lippman_cpp_primer_eng.zip
+Автор:Стенли Липпман,Жози Лажойе
Язык программирования С++. Вводный курс
Size:0.8 Mb
http://anatolix.naumen.ru/files/books/lippman_cpp_primer_rus.zip
11. Автор:Herb Sutter
Exceptional C++,
Size:0.3 Mb
http://anatolix.naumen.ru/files/books/exceptional_cpp.zip
More Exceptional C++
Size:0.5 Mb
http://anatolix.naumen.ru/files/books/more_exceptional_cpp.zip
12. Автор:Dov Bulka, David Mayhew
Efficient C++ Performance Programming Techniques
Size:1.5 Mb
http://anatolix.naumen.ru/files/books/efficient_cpp.zip
13. Правила программирования на C и C++
Автор:Allen I. Holub
http://webcenter.ru/~zwb/rope.htm
14. Автор:Bjarne Stroustrup
The C++ Programming Language, Third Edition. Special Edition
Size:3.9 Mb
http://it-books.narod.ru/C_CPP/Stroustrup_eng.rar
Автор:Бьерн Страуструп
Язык программирования C++. 3-е издание. Специальное издание.
Size:2.9 Mb
http://anatolix.naumen.ru/files/books/stroustroup_se.zip
15. Автор:Джефф Элджер
C++ Библиотека программиста
Size:1.8 Mb
http://it-books.narod.ru/C_CPP/CppForRealProgrammers_rus.rar
16. Автор:Scott Meyers
Effective C++, 2nd Edition: 50 Specific Ways to Improve Your Programs and
Designs
Size:4.1 Mb
http://it-books.narod.ru/C_CPP/effectivecpp_moreeffectivecpp.rar
17. Автор:Scott Meyers
More Effective C++: 35 More Ways to Improve Your Programs and Designs
Size:4.1 Mb
http://it-books.narod.ru/C_CPP/effectivecpp_moreeffectivecpp.rar
18. INTERNATIONAL STANDARD
Programming languages - C++ ISO/ANSI/EIC
Size:2.3 Mb
http://it-books.narod.ru/C_CPP/AnsiStandart_eng.rar
NEW 03.10.06 14:13
в ответ Tomasson 30.08.06 16:32
NEW 18.10.06 18:17
в ответ voxel3d 18.10.06 17:33
Самого общего плана. Стали бы писать гораздо меньше глупостей.
Насколько я помню, Приматам не давали то, что называлось Прикладная Теория Цифровых Автоматов (ПТиЦА) и не приязывали ПТЦА к реализации процессора и ассемблера. Тем не мение, то, что они должны реализовывать - практически чистая ПТЦА, правда автомат не только с состояниями, но и со стеком. Так вот реализация приклада в виде автомата в чистом виде снимает большую часть глюков - интерфейсные, конечно, остаются, но апп-серверная часть работает как часы. Отсюда - примерно -40%...

Насколько я помню, Приматам не давали то, что называлось Прикладная Теория Цифровых Автоматов (ПТиЦА) и не приязывали ПТЦА к реализации процессора и ассемблера. Тем не мение, то, что они должны реализовывать - практически чистая ПТЦА, правда автомат не только с состояниями, но и со стеком. Так вот реализация приклада в виде автомата в чистом виде снимает большую часть глюков - интерфейсные, конечно, остаются, но апп-серверная часть работает как часы. Отсюда - примерно -40%...

NEW 18.10.06 18:21
в ответ voxel3d 18.10.06 17:36
вот, и мучаются все.
-------
??? - Асм никогда меня не мучал...
Единственное, что было мучительно делать две вещи - объяснять девченкам какие команды/сигналы выдает процессор в режиме ПДП
и объяснять преподавателю где и почему он ошибается... даже если в фирменном руководстве написано именно так, как он объясняет...
-------
??? - Асм никогда меня не мучал...



NEW 19.10.06 09:11
в ответ voxel3d 18.10.06 22:38
Система - наша Praxisverwaltungssystem, не ОС. Почему асм - понятия не имею, меня тут тогда еще не было. Видимо, имело смысл.
<----
<----
NEW 19.10.06 10:03
в ответ Simple 19.10.06 09:11
Ну, что сказать, сочувствую...
Хы, как ты умудрился такую контору найти?
Не, контора с фортраном не удивила бы нифига или PL каким-нибудь, даже, но, вот, подобное, это нонсенс.
> Видимо, имело смысл.
Ты сам-то веришь в то, что сказал?
Хы, как ты умудрился такую контору найти?

> Видимо, имело смысл.
Ты сам-то веришь в то, что сказал?

Dropbox - средство синхронизации и бэкапа файлов.
NEW 19.10.06 11:24
в ответ voxel3d 19.10.06 10:03
Хы, как ты умудрился такую контору найти?
------
Я бы, пожалуй, сначала удивился тому, что она все еще существует...
Я тут недавно пересчитал цену одной формы для клиента в создаваемом с нуля приложении (или модификацю в имеющемся, но только для используемой нами технологии) - менее 10 евро по факту оплаты.
Блин, надо бросать это ИТ и переквалифицироваться в грузчики...
------
Я бы, пожалуй, сначала удивился тому, что она все еще существует...

Я тут недавно пересчитал цену одной формы для клиента в создаваемом с нуля приложении (или модификацю в имеющемся, но только для используемой нами технологии) - менее 10 евро по факту оплаты.

Блин, надо бросать это ИТ и переквалифицироваться в грузчики...

NEW 19.10.06 11:46
в ответ voxel3d 19.10.06 10:03
В штате 16 программеров, из них полтора заняты формулярами. Один коллега полностью на этом деле, я наполовину. Угадай, чем занимаются остальные ;)
К слову сказать, ничего эргономичнее таких формуляров я не видел. Возможности ограничены, но он и не для таких монстров как на картинке был придуман. Я знаю, ты щас ухмыльнешься, но я и не ожидал, что это кто-то поймет.
@Murr
Не только существует, но и один из лидеров рынка: 15%, сиречь 20000 лицензий.
К слову сказать, ничего эргономичнее таких формуляров я не видел. Возможности ограничены, но он и не для таких монстров как на картинке был придуман. Я знаю, ты щас ухмыльнешься, но я и не ожидал, что это кто-то поймет.
@Murr
В ответ на:
Я бы, пожалуй, сначала удивился тому, что она все еще существует...
Я бы, пожалуй, сначала удивился тому, что она все еще существует...
Не только существует, но и один из лидеров рынка: 15%, сиречь 20000 лицензий.
NEW 19.10.06 12:23
в ответ Simple 19.10.06 11:46
> Угадай, чем занимаются остальные
Свечку держат и советы дают?
> Я знаю, ты щас ухмыльнешься, но я и не ожидал, что это кто-то поймет.
Да прич╦м тут эргономика форм? Это дело десятое. Я к тому, что надо быть совершенно больным на голову (я про того, кто асм выбрал), чтобы какую-то большую десктопную хрень на асме взяться писать. Я тебе сходу скажу, что общий бюджет программы из-за вашего асма вырос раз в десять минимум. А насколько кривая архитектура там внутри я даже представить боюсь. Просто, по-определению невозможно находясь на таком низком уровне абстракции, какой да╦т асм, успешно разруливать связи, котоые на верхних уровнях находятся, ибо голова не квадратная.
Свечку держат и советы дают?

> Я знаю, ты щас ухмыльнешься, но я и не ожидал, что это кто-то поймет.
Да прич╦м тут эргономика форм? Это дело десятое. Я к тому, что надо быть совершенно больным на голову (я про того, кто асм выбрал), чтобы какую-то большую десктопную хрень на асме взяться писать. Я тебе сходу скажу, что общий бюджет программы из-за вашего асма вырос раз в десять минимум. А насколько кривая архитектура там внутри я даже представить боюсь. Просто, по-определению невозможно находясь на таком низком уровне абстракции, какой да╦т асм, успешно разруливать связи, котоые на верхних уровнях находятся, ибо голова не квадратная.
Dropbox - средство синхронизации и бэкапа файлов.
NEW 19.10.06 12:29
в ответ voxel3d 19.10.06 12:23
чтобы какую-то большую десктопную хрень на асме взяться писать.
------
Насколько я понял, у них не стандартный, процессорный, асм, а асм для виртуальной исполняющей системы.
Если это так, то головной боли там много меньше, чем при разруливании связей на верхнем уровне в любом
стандартном оо-языке.
Правда, для того чтобы это было эффективно нужно поднатаскать писателей
в ПТЦА - чтобы понимали что делают...
------
Насколько я понял, у них не стандартный, процессорный, асм, а асм для виртуальной исполняющей системы.
Если это так, то головной боли там много меньше, чем при разруливании связей на верхнем уровне в любом
стандартном оо-языке.

в ПТЦА - чтобы понимали что делают...

NEW 19.10.06 13:03
в ответ Simple 19.10.06 11:46
Не только существует, но и один из лидеров рынка: 15%, сиречь 20000 лицензий.
Это неважно. Я уже насмотрелся как тут заказы раздаются. Я вот года 3-4 назад занимался кастомизацией клайент менеджмента для всего телекома. Система на которой всё это основывалось (On Command CCM) имела много недостатков, но за десять лет сотрудничества с T-Systems и пару лет моей кастомизации всё работало уже почти как часы. Что произошло дальше? А дальше шефу T-Systems предложили место в Aufsichtsrat фирмы конкурента, и он вопреки всем техническим аргументам протащил эту новую систему, хотя работала она через пень колоду. Как анекдот - сначала они делали обмен данных соединяясь Freigabe на которой лежали десятки тысяч часто обновляемых файлов. В итоге один только траффик за этот счёт стоил 80 тысяч евро в день. Или вот друг работает в одной фирмочке, те получили заказ, так как дочка нужного чела замужем за кем надо. Так что как раз в вашей области можно писать последнее Г. но через какие-нибудь Kassenärtzliche Vereinigungen быть "лидером"...
Это неважно. Я уже насмотрелся как тут заказы раздаются. Я вот года 3-4 назад занимался кастомизацией клайент менеджмента для всего телекома. Система на которой всё это основывалось (On Command CCM) имела много недостатков, но за десять лет сотрудничества с T-Systems и пару лет моей кастомизации всё работало уже почти как часы. Что произошло дальше? А дальше шефу T-Systems предложили место в Aufsichtsrat фирмы конкурента, и он вопреки всем техническим аргументам протащил эту новую систему, хотя работала она через пень колоду. Как анекдот - сначала они делали обмен данных соединяясь Freigabe на которой лежали десятки тысяч часто обновляемых файлов. В итоге один только траффик за этот счёт стоил 80 тысяч евро в день. Или вот друг работает в одной фирмочке, те получили заказ, так как дочка нужного чела замужем за кем надо. Так что как раз в вашей области можно писать последнее Г. но через какие-нибудь Kassenärtzliche Vereinigungen быть "лидером"...
NEW 19.10.06 13:07
в ответ Simple 19.10.06 12:49
Допер?
Хммм.... лет этак пять назад, меня достали _постоянные_ изменения тех.задания (такая уж была ситуация, что никто не знал, что и как - я предметной области, консультант - программиринга) и Я за пару недель написал аналогичный асм и исполняющую систему... заодно - запихал его в базу данных и сделал загрузку актуального набора микрокоманд из нее... после чего осталось только нарабатывать потенциально возможный функционал и диспечировать вызовы в соотвествии с командами... вот дополнять набор микрокоманд было проблематично...
Об этом Я тебе уже как-то говорил, но видимо... раз уж сейчас про допирание бакланишь... недостаточно внятно...
Хммм.... лет этак пять назад, меня достали _постоянные_ изменения тех.задания (такая уж была ситуация, что никто не знал, что и как - я предметной области, консультант - программиринга) и Я за пару недель написал аналогичный асм и исполняющую систему... заодно - запихал его в базу данных и сделал загрузку актуального набора микрокоманд из нее... после чего осталось только нарабатывать потенциально возможный функционал и диспечировать вызовы в соотвествии с командами... вот дополнять набор микрокоманд было проблематично...
Об этом Я тебе уже как-то говорил, но видимо... раз уж сейчас про допирание бакланишь... недостаточно внятно...

NEW 19.10.06 13:16
в ответ Simple 19.10.06 12:46
Хм. Я на самом деле не понял. Что такое ассемблер для какой-нибудь абстрактной виртуальной машины я понимаю, а что означает ассемблер - язык системы?
И, собственно, на каком языке программа написанна?
И, собственно, на каком языке программа написанна?
Dropbox - средство синхронизации и бэкапа файлов.
NEW 19.10.06 13:17
в ответ scorpi_ 19.10.06 13:06
Пример кода?
;hash.inc 2005-09-05
;hashcode einer zeichenkette ausrechnen
getCode: ;liefert code eines zeichens aus einer reihe
;übergabe
; s1 = zeichen (nur das erste zeichen im register wird ausgewertet)
;rückgabe
; z-flag gesetzt, wenn zeichen alphanumerisch ist,
; dann
; n1 = code
rsave s1
rsave s2
lmid s1,s1,1,1 ;nur das erste zeichen
lr 2,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
instr 1,s2,s1
call invZFlag
ret
hashCode: ;hash ermitteln
;übergabe
; s1 = id
; n1 = basis
;übergabe
; z-flag gesetzt, wenn gültig,
; dann
; n1 = hash
rsave s1
rsave s2
rsave n2 ;iterator
rsave n3 ;länge
rsave n8 ;basis
rsave n9 ;summe
lnr 2,#1
lnrls 3,s1
lnr 8,1
lnr 9,#0
repeat
lmid s1,s2,[2],1
call getCode
retc nz
mul 9,#32
add 9,1
lnr 1,9
div 1,8
int 1
mul 1,8
sub 9,1 ; n9 %= n8
inc 2
cnr 2,3
until p
lnr 1,9
call setZFlag
ret
NEW 19.10.06 13:27
в ответ Simple 19.10.06 13:15
Ты знаешь, тот самый друг, которого я упомянул, работает в фирме пишушей проги для зубных врачей, поэтому изволь тебе не поверить.
По твоему коду я вынужден согласится с вокселем - начальник баран. Получить нормальный софт на этом можно только имея в комманде гениев и неограниченное количество денег.
По твоему коду я вынужден согласится с вокселем - начальник баран. Получить нормальный софт на этом можно только имея в комманде гениев и неограниченное количество денег.
NEW 19.10.06 13:35
в ответ scorpi_ 19.10.06 13:27
Можешь не верить, никто не заставляет. Только сначала ознакомься со спецификой области. Еще раз: врачи сами решают, какой софт им использовать. Ф-я K(B)V в данном случае - расчеты с кассами, сертификация и принятие стандартов.
По поводу начальников-баранов: читай всю тему ;)
По поводу начальников-баранов: читай всю тему ;)
NEW 19.10.06 14:18
в ответ scorpi_ 19.10.06 14:12
Даже не обращая внимания на то, что String.hashCode не удовлетворяет условиям задачи, почему это должно мне быть интересно? Я решаю задачу, исходя из того, что у меня есть.
К слову, этот код тоже написан один раз и используется как библиотека. Скорость выполнения в данном случае не критична.
К слову, этот код тоже написан один раз и используется как библиотека. Скорость выполнения в данном случае не критична.
NEW 19.10.06 14:23
в ответ Simple 19.10.06 14:18
Да мало что пишется один раз. Софт обычно ещё и поддерживать приходится. Да ё-моё, неужели эти прописные истины тебе надо объяснять? Я ещё понимаю, что можно флеймить по поводу managed/native - там преимущества менее очевидны, но по поводу asm/high level история давно уже расставила все точки над и...
NEW 19.10.06 14:26
короче, Симпл, ты понял, да? Бросай нафиг свой асм, проявляй инициативу и энтуазизьм и дави на шефа, чтоб поручил тебе переписать систему на кульном высокоуровневом языке.
через скока дней уволят, интересно?
в ответ Simple 19.10.06 14:18
короче, Симпл, ты понял, да? Бросай нафиг свой асм, проявляй инициативу и энтуазизьм и дави на шефа, чтоб поручил тебе переписать систему на кульном высокоуровневом языке.
через скока дней уволят, интересно?
(\_/)
(O.o)
(> <) This is Bunny. Copy Bunny into your signature to help him on his way to world domination.
NEW 19.10.06 14:33
в ответ scorpi_ 19.10.06 14:23
Естественно, приходится, и мы это также делаем. Причем приходится иногда копаться в таком дерьме, по сравнению с которым мой код - конфетка (хотя он и без всяких сравнений на данном уровне). Не буду приводить примеры, а то еще поседеете все тут :-D
Мне-то ваши аргументы понятны, а вот вы никак не хотите меня понять.
Мне-то ваши аргументы понятны, а вот вы никак не хотите меня понять.
NEW 19.10.06 14:39
в ответ Aiolos 19.10.06 14:26
Х.з. я на своего шефа нагружаю по полной. Он, правда, всегда брыкается и любит говорить нуегонахсложнослишком, но я не прекращаю и, в результате, почти всегда вынуждаю принять архитектуру. Они сопротивляются всей конторой сразу, но потом нич╦, привыкают и делают как партия в лице меня велит. Правда, вс╦ касается только архитектуры, а не выбора языка. Но я щас веду активную пропаганду Немерле, самое главное уже сделанно, шеф уже согласен для негуя использовать, коллеги, правда, в ужасе, а я им говорю: - Не бэ, вам вс╦ равно девацца некуда будет.

Dropbox - средство синхронизации и бэкапа файлов.
NEW 19.10.06 14:44
в ответ Simple 19.10.06 13:35
Я так думаю, что просто у вас нет особых конкурентов для данной аудитории. Моя знакомая работала на одну фирму которая смонстрячила нечто подобное для строительных фирм. Сделали все на ВБ и 10 лет уже занимаются чисткой кода. Главная фишка, как мне обьясняли, не удобство работы, интерфейс..., а то что там постоянно идет актуализация в соответствии с законодательством, причем по всем кантонам (Швейцария). Апклиха постоянно глючит, переидочески девелоперская фирма переделывает отчеты для фирм где сие поделие насчитало не то и не туда, но все продолжают жрать кактус. Альтернативы нет.
Может и инертность сказывается. Типа сосед так делает, чего я буду изобретать велосипед. У жены на работе как-то попросили МакКинзи оптимизовать некоторую отчетность, так они тоже склепали что-то на вб. Через год ничего не работало, эти ребята захардкодили даты и названия таблиц. Но денюжков состригли знатно. На вопрос, почему не обратились к специалистам, жена сказала, что у них просто все делается через МакКинзи, куча менеджеров там раньше работалa и сплавляют все в альму-матерь.
---
Моя совесть чиста и прозрачна. Её даже не видно.
Может и инертность сказывается. Типа сосед так делает, чего я буду изобретать велосипед. У жены на работе как-то попросили МакКинзи оптимизовать некоторую отчетность, так они тоже склепали что-то на вб. Через год ничего не работало, эти ребята захардкодили даты и названия таблиц. Но денюжков состригли знатно. На вопрос, почему не обратились к специалистам, жена сказала, что у них просто все делается через МакКинзи, куча менеджеров там раньше работалa и сплавляют все в альму-матерь.
---
Моя совесть чиста и прозрачна. Её даже не видно.
NEW 19.10.06 14:44
это настолько индивидуальный в каждом случае вопрос, что я даже боюсь его детально затрагивать, ибо это бессмысленно и только лишний флэйм разведет :)
в ответ voxel3d 19.10.06 14:39
это настолько индивидуальный в каждом случае вопрос, что я даже боюсь его детально затрагивать, ибо это бессмысленно и только лишний флэйм разведет :)
(\_/)
(O.o)
(> <) This is Bunny. Copy Bunny into your signature to help him on his way to world domination.
NEW 19.10.06 15:02
в ответ scorpi_ 19.10.06 14:44
Я не передергиваю. Нужен был простой макроязык, чтобы писать простые формы. Интерпретатор для асма написать проще простого, это даже Мурр сможет :-D :-P А то, что формы постепенно "вышли из берегов" языка, это уже другой вопрос. В большинстве своем юзеры довольны и ничего другого не хотят.
Человек, который все это придумал, далеко не баран, поверь мне. Вокруг его ноу-хау делаются миллионные обороты.
Человек, который все это придумал, далеко не баран, поверь мне. Вокруг его ноу-хау делаются миллионные обороты.
NEW 19.10.06 15:42
в ответ scorpi_ 19.10.06 15:15
Я точно не знаю, по-моему в конце 80-х/начале 90-х. Изначально все бегало под ос пролог. Первоначально это даже не С был, а какой-то bal - business application logic. Я с этим только косвенно сталкивался.
Вспомнил, кстати, что у нас до сих пор поддерживаются текстовые терминалы :)
Вспомнил, кстати, что у нас до сих пор поддерживаются текстовые терминалы :)
NEW 19.10.06 15:43
Учитывая ограниченность рынка, неплохая. Клиентами на местах занимаются сервис-партнеры, у нас только секонд-левел-саппорт.
зы У нас две версии софта. Вторая - вполне современная, под нее как раз гуевые формы пишутся.
зы У нас две версии софта. Вторая - вполне современная, под нее как раз гуевые формы пишутся.
NEW 19.10.06 16:18
в ответ Simple 19.10.06 15:46
Представь себе форму полей так на сотню.
------
Не представил, а сделал. Причем если нет спецификации на поля - сделаю за... 30 кликов мышью... и работать будет...
Вот если бы ты сказал, что тебе надо сделать больше, чем можно запихать в одну таблицу - пришлось бы думать...
------
Не представил, а сделал. Причем если нет спецификации на поля - сделаю за... 30 кликов мышью... и работать будет...

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

NEW 19.10.06 16:32
в ответ Simple 19.10.06 15:43
Вторая - вполне современная...
------
Это мне напоминает одну штучку под названием Симс... Кто не в курсе - софт для обслуживания охранных систем. Наваяли они там... ой... для простоты - 8-мь терминалов сканят, _одновременно_, расшаренный по сетке лог-файл в несколько мег размером... и повех этого начали лепить ГУЙ... без разделения функциональности, без введения клиент-серверной технологии, без введения нормальной базы... оно и под чистым то ДОСом еле-еле работало...
Что характерно - юзалось это все по тем же самым причинам, что приводишь ты - _работает_. Владельцы компании, которая использовала (подчеркиваю - не разрабатывала) эту каку, решили заменить этот Симс на что-то самописное... на Аксессе. (Тут уже можно смеяться) Программер у них работал-работал... и даже что-то сваял... и даже все формочки были красивыми... только одного не учли - данные в систему поступают по 16-ти RS232 на 110Кбод... и каждые 32 бита - транзакция... и весьма критичная по времени...
------
Это мне напоминает одну штучку под названием Симс... Кто не в курсе - софт для обслуживания охранных систем. Наваяли они там... ой... для простоты - 8-мь терминалов сканят, _одновременно_, расшаренный по сетке лог-файл в несколько мег размером... и повех этого начали лепить ГУЙ... без разделения функциональности, без введения клиент-серверной технологии, без введения нормальной базы... оно и под чистым то ДОСом еле-еле работало...
Что характерно - юзалось это все по тем же самым причинам, что приводишь ты - _работает_. Владельцы компании, которая использовала (подчеркиваю - не разрабатывала) эту каку, решили заменить этот Симс на что-то самописное... на Аксессе. (Тут уже можно смеяться) Программер у них работал-работал... и даже что-то сваял... и даже все формочки были красивыми... только одного не учли - данные в систему поступают по 16-ти RS232 на 110Кбод... и каждые 32 бита - транзакция... и весьма критичная по времени...

NEW 20.10.06 22:23
в ответ Murr 20.10.06 20:58
Мурр, читают:
http://www.informatik.tu-muenchen.de/studium/vvWS0607-info.html#di-vorl3
но не все на ету муть ходят:-). Обходятся другими предметами.
http://www.informatik.tu-muenchen.de/studium/vvWS0607-info.html#di-vorl3
но не все на ету муть ходят:-). Обходятся другими предметами.
NEW 20.10.06 22:30
в ответ Root_Unlis 20.10.06 22:11
Да и теории в наших институтах пичкают дай боже
-------
Хи-хи... Проверить-то это проще-простого. Элементарный вопрос на понимание FLТ - какая операция должна выполнятся с после вычисления транзитивного замыкания матрицы инцидентности для грамматикии языка, но до вычисления реслексивного замыкания?
P.S. Это действительно _элементарный_ вопрос... для того, кто понимает TLT.
-------
Хи-хи... Проверить-то это проще-простого. Элементарный вопрос на понимание FLТ - какая операция должна выполнятся с после вычисления транзитивного замыкания матрицы инцидентности для грамматикии языка, но до вычисления реслексивного замыкания?

P.S. Это действительно _элементарный_ вопрос... для того, кто понимает TLT.
