Re[43]: Уточнение уточнения
От: Mamut Швеция http://dmitriid.com
Дата: 11.06.09 14:42
Оценка:
>> 10 лет * ((кол-во програмистов) * зарплата + содержание) = фирма уходит из бизнеса на второй
>> месяц.
S>Значит недостойна.

Ггг. Недостойна чего? Ты эта, мозгом пораскинь.


>> ЗЫ. Ты гмылом пользуешься? Доволен? Фигня, то он до их пор не отлажен и не оптимизирован?

S>Нет, n\a, нет.

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


dmitriid.comGitHubLinkedIn
Re[43]: Уточнение уточнения
От: WFrag США  
Дата: 11.06.09 14:43
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

>> 10 лет * ((кол-во програмистов) * зарплата + содержание) = фирма уходит из бизнеса на второй

>> месяц.
S>Значит недостойна.

Интересно, а откуда фирма должна брать деньги в твоём понимании? Продукт она не продаёт, т.к он ещё недостаточно идеален. Зарплату надо платить, отпуска оплачивать. Или все эти 10 лет программисты будут за просто так работать?
Re[44]: Уточнение уточнения
От: Sheridan Россия  
Дата: 11.06.09 15:28
Оценка:
Mamut wrote:

>>> 10 лет * ((кол-во програмистов) * зарплата + содержание) = фирма уходит из бизнеса на второй

>>> месяц.
> S>Значит недостойна.
>
> Ггг. Недостойна чего? Ты эта, мозгом пораскинь.
Недостойна выставлять свой продукт на рынке.
Мамут, почему мы обсуждаем мой идеализм?


>>> ЗЫ. Ты гмылом пользуешься? Доволен? Фигня, то он до их пор не отлажен и не оптимизирован?

> S>Нет, n\a, нет.
> Неважно. Все равно пользуешься большим кол-вом софта, которое не соответствует твоим критериям,
> но тем не менее ты им доволен
Если замены нет — пользуюсь, но недоволен. Если замена есть — заменяю.
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[37]: Уточнение уточнения
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 11.06.09 15:30
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>gandjustas wrote:


>>>> Хотя даже в частном случае ты не можешь десериализацию написать.

>> S>Я написал по минимуму. Да не бойся, писал я такое лет 7 назад, когда делал для себя
>> каталогизатор CD. Так покажи код, просто десериализация полиморфного объекта с получением ссылки
>> на базовый класс.
S>У меня там такого не было. Обычные структуры были, да. А вот полиморфного ничего
Так всетаки ты даже не представляешь себе сути проблемы, хотя все равно продолжаешь споритиь.
Видимо я не ошибся с характеристикой.
Re[40]: Уточнение уточнения
От: Sheridan Россия  
Дата: 11.06.09 15:30
Оценка:
Mamut wrote:

>>> S>М... А зачем свои ресурсы экономить? Лучше будет и туда и туда выделить не по паре дней а по

>>> неделе. Тогда чем-то ещё придётся жертвовать.
> S>С чего это?
>
> Неделю на сериализацию. Месяц на создани собственного сетевого протокола. Месяц на написание
> собственного хранилища данных. Неделю еще на что-то. Ведь мы люим велосипеды, не?
> В итоге прошел год — куча велосипедов, из них половина не протестирована, а проект не сдивнулся с
> мертвой точки ни на шаг

Ни на шаг? Ну эт ты загнул.
Спешка нужна только при ловле блох. Ну еще дотнетчики спешат кудато вечно.
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[38]: Уточнение уточнения
От: Sheridan Россия  
Дата: 11.06.09 15:49
Оценка:
Mamut wrote:

> S> > Шеридан, ты все же ответь на вопрос, как ты будешь сохранять данные с циклическими ссылками,

> S> Не знаю, думаю — флаги какие нибудь прикручу, а что?
> Ключевой момен выделен
Знаешь, с таким же итогом я могу судить о твоем знании русского языка по предыдущей фразе. А предыдущая твоя фраза ничего
хорошего в этом отношении не говорит.
А вот если же понимать мою фразу не дословно, а смысл, то можно уверенно сказать что там написано "Еще не решил, что лучше"

> S> > а также как ты будешь сохранять указатели.

> S> Надо сохранять не указатели, а данные, хранящиеся там.
> Верно, но не до конца. Потому что, восстанавливая, ты должен получить структуру с указателями на
> эти данные. Не говоря уже о том, что эти данные сами могут быть достаточно сложными структурами,
> да еще и зацикленными друг на друга.
Что мне мешает создавать эти структуры по мере загрузки данных? Ты? Ты — не мешаешь совсем.

> В итоге твой код, способный созранить и восстановить такую структуру, разрастется неимоверно и на

> определенном этапе тебе все равно придется вносить «мусор» — те же флаги.
Ну уж извините. У меня мусора там будет на порядки меньше, чем при любой сериализации.

> S> Это какие? Сложно уследить за порядком сохранения-чтения? Ну да, ну да...

>
> Сохрани мне std::list<my_class *>
> Порядок чтения у него, ага
Приблизительно так:
std::list<my_class *> mc;
...
foreach(my_class *c, mc)
{
 c->save();
}


> Так вот, тем способом, что ты сохраняешь данные ты не сможешь прочитать UTF-16 строку. Ты даже не

> сможешь гарантированно прочитать UTF-8 строку. Ты будешь обязан сохранить с этой строкой как
> минимум следующие данные: — тип строки — кодировка
> — тип нормализации (для UTF-8)
> И только потом — саму строку. Именно поэтому сохранение данных aka сериализация — то не просто
> «записал—считал»
Ну слава богу. Ты еще способен трезво думать.
256 кодировок хватит? Ну значит хватит 1 байта для сохранения типа кодировки.

> S> Мамут, там все красиво конечно описано. Только это не мой случай там описан.

> Там описан именно твой случай. Проблемы, что я процитировал, относятся именно к твоему случаю.
Нет. Я не сохраняю объекты. Я сохраняю их данные.

> Ты — все-таки клинический идиот, да простят меня модераторы.

Нет, Мамут, это не так

> Сериализация — это сохранение

> данных. С «мусором» или без него — это способ реализации такого сохранения. Твой способ «без
> мусора» работает только для простейших типов данных и встроенных типов. Для всего отсального он н
> работает
Сериализация это сохраниение состояния объекта, о чем первой-же строкой указано по той ссылке: "Иногда нужно сохранить
состояние класса в файл, передать состояние класса по сети." Сохранение состояния класса всетаки != сохраанение данных класса.
По ой-же ссылке самый максимально свободный от мусора формат — все равно текстовый. А у меня будет бинарный.
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[13]: Коробочные продукты на .NET (НЕ для программистов/ад
От: hattab  
Дата: 11.06.09 15:53
Оценка:
Здравствуйте, jenyavb, Вы писали:

H>>Ты мне пытаешься нарисовать картину идеального мира, чтоли? Пожалуйста, не нужно. Ну правда, смешно читать такие вещи на фоне существующих веток, где говорят, что бета 2010 студии тормозит на современном железе (согласен, это всего лишь бета).

J>А она не на чистом .net, там как-раз большинство кода на C++, так что следуя твоей логике это c++-код в тормозит.

Нет, следуя моей логике все наоборот: раньше не тормозило, стали по кускам переписывать под .NET (а там, насколько я наслышан .NET'овских "кусков" таки не мало -- редактор, главное орудие программиста, под WPF) стало тормозить. Выводы?

H>>На фоне сливающегося Paint.NET, на фоне монстра по имени Creative Docs. NET. Я уже писал о симптоматичности, вот она то и проглядывается...

J>Судить о всем дотнете по нескольким приложениям...

Гхм. Во-первых, других продуктов нет, смотреть не на что Во-вторых, что касается меня лично, я для себя писал бенчи из области моих задачь и делал сравнения, чтоб понять, надо оно мне или нет. Мне не надо. В-третьих, если в существующих на платформе приложениях наблюдаются схожие проблемы с перформансом (неважно чего, будь то гуй или расчеты), это таки симптоматика. Вопросы?

H>>Ты правда думаешь, что менторы из МС (читаем About от Paint.NET), позволили так накорявить в алгоритме, что его даже параллельность не спасает?

J> А ты думаешь они там все алгоритмы до блеска вылизывали?

Paint.NET продукт-визитка (если есть сомнения, читать историю создания и думать), кто этого не понимает, увы...

H>>Это и небыло сравнением Один горячий финский хлопец учудил сравнив Paint.NET с Photoshop, на что в ответ получл сей пример (по типу, разберись ка с моим младшим братом сперва). Если ты в этом увидел сравнение .NET с нативом, ну...

J>Да, а это что?
J>

J>Предлагаю объективный тест Выбери картинку побольше и наложи на нее фильтр Gaussian Blur с радиусом в 200 (побольше и 200 это для того, чтоб было что посмотреть). Теперь запусти GIMP и проделай то же самое (к слову, в GIMP'е настроек фильтра больше, можешь попробовать со всякими -- картины это не меняет). Уверяю тебя, приставка .Net будет порвана на твоих глазах раз десять точно (чем больше картинка тем ощутимее).


Это не первое упоминание того сравнения (а я сказал таки, и особо подчеркнул, о первом).

H>>>>Тут ты прав, чтоб сравнивать скорость работы wstring и StringBuilder'а, нужно иметь непоколебимую веру в светлую идеи отстаивания своих взлядов/убеждений/веры любой ценой

J>>>И чем же отличается скорость работы wstring и StringBuilder'а, а то я не в теме?
H>>Можешь ознакомиться
Автор: criosray
Дата: 07.06.09
.

J>Да уж, опять сравнение шила с мылом...
J>

J>Тут на самом деле не надо путать StringBuilder, специально заточенный на модификации, и std::wstring, которая, по сути, своего рода компромисс между хранилищем строки (добавь требование преобразования к zero-terminated) и StringBuilder. Забавляет другое — что некоторый выигрыш Append/Replace нивелируется медленным ToString.


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

H>>>>(а сравнений алгоритмов тут небыло вообще, насколько я помню)

J>>>В этом и заключается ущербность данного сравнения. Люди сравнивают скорость работы программы даже не заглядывая в реализацию .
H>>Как я уже написал выше, это небыло сравнением натива с .NET. Было сравнение продуктов.
J>Там это сравнение было именно в контексте "тормознутости .net"
J>

J>MxKazan>На моем домашнем компе, который и 3 года назад то был средний и с тех пор не видел ничего нового, кроме винтов, Paint.Net просто летает. Так что, всё больше убеждаюсь, что приставка ".Net" действует на некоторых как красная тряпка для быка, хочется искать тормоза даже когда их нет.


В этом контексте все верно, сравниваются натив и .NET (я использую уже имеющийся в моей практике пример слива для демонстрации). .NET сливается. Ты считаешь, что дело в алгоритме. Я так не считаю. Код смотреть лениво? Лениво. У меня нет цели чего-то доказать тебе. У тебя? Вероятно, тоже нет. Остаемся при своих?
Re[36]: Уточнение уточнения
От: Sheridan Россия  
Дата: 11.06.09 15:54
Оценка: -2 :))
anton_t wrote:

> a* a1 = GetA(); // или b или с.

> a1->save("file.dat");
>
> a* a2 = ... //<- сдесь живут драконы
> a2->load("file.dat");

> А теперь сделай этот код работающим, если конечно можешь.


Знаешь, если зарядить в двустволку 12го калибра картечи, навести себе на кисть руки, и нажать оба курка, то ты останешься без
кисти. Другого не дано. Ну разве что осечка случится.
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[37]: Уточнение уточнения
От: anton_t Россия  
Дата: 11.06.09 16:11
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>anton_t wrote:


>> a* a1 = GetA(); // или b или с.

>> a1->save("file.dat");
>>
>> a* a2 = ... //<- сдесь живут драконы
>> a2->load("file.dat");

>> А теперь сделай этот код работающим, если конечно можешь.


S>Знаешь, если зарядить в двустволку 12го калибра картечи, навести себе на кисть руки, и нажать оба курка, то ты останешься без

S>кисти. Другого не дано. Ну разве что осечка случится.

Понятно. "Сегодня в колбасе потребности нет".
Re[39]: Уточнение уточнения
От: anton_t Россия  
Дата: 11.06.09 16:23
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

S>Mamut wrote:


>> Сериализация — это сохранение

>> данных. С «мусором» или без него — это способ реализации такого сохранения. Твой способ «без
>> мусора» работает только для простейших типов данных и встроенных типов. Для всего отсального он н
>> работает
S>Сериализация это сохраниение состояния объекта, о чем первой-же строкой указано по той ссылке: "Иногда нужно сохранить
S>состояние класса в файл, передать состояние класса по сети." Сохранение состояния класса всетаки != сохраанение данных класса.
S>По ой-же ссылке самый максимально свободный от мусора формат — все равно текстовый. А у меня будет бинарный.

"Данные класса" и "состояние класса" (видимо все-таки имеется ввиду "данные объекта" и "состояние объекта") — это синонимы. Учи ООП.
Да, и в том же .net есть и бинарный формат сериализации.
Re[35]: Уточнение уточнения
От: Antikrot  
Дата: 11.06.09 16:53
Оценка: :)
Здравствуйте, Mamut, Вы писали:

M>Жопа начнется, когда этот код нчнт поддерживать другие. Когда окажется, что любое маленькое изменение в любом классе требует десятка изменений в других файлах.

и ведь он прав, черт возьми
Автор: ShaggyOwl
Дата: 07.06.09
Re[37]: Уточнение уточнения
От: Antikrot  
Дата: 11.06.09 17:23
Оценка: :)
Здравствуйте, Sheridan, Вы писали:

>> a* a1 = GetA(); // или b или с.

>> a1->save("file.dat");
>>
>> a* a2 = ... //<- сдесь живут драконы
>> a2->load("file.dat");
>> А теперь сделай этот код работающим, если конечно можешь.

S>Знаешь, если зарядить в двустволку 12го калибра картечи, навести себе на кисть руки, и нажать оба курка, то ты останешься без

S>кисти. Другого не дано. Ну разве что осечка случится.
Шеридан, не поддавайся на троллинг, посылай всех туда. Тебе осталось только прикинуть, сколько кода для сериализации надо добавить для каждого нового класса в программе. Ну и с зацикливанием разобраться.
Re[45]: Уточнение уточнения
От: Mamut Швеция http://dmitriid.com
Дата: 11.06.09 17:50
Оценка:
S> >>> 10 лет * ((кол-во програмистов) * зарплата + содержание) = фирма уходит из бизнеса на второй
S> >>> месяц.

S> > S>Значит недостойна.


S> >

S> > Ггг. Недостойна чего? Ты эта, мозгом пораскинь.

S> Недостойна выставлять свой продукт на рынке.

S> Мамут, почему мы обсуждаем мой идеализм?

Потому что это не идеализм, а маразм
avalon 1.0rc1 rev 239, zlib 1.2.3


dmitriid.comGitHubLinkedIn
Re[41]: Уточнение уточнения
От: Mamut Швеция http://dmitriid.com
Дата: 11.06.09 17:50
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

S> Mamut wrote:


S> >>> S>М... А зачем свои ресурсы экономить? Лучше будет и туда и туда выделить не по паре дней а по


S> >>> неделе. Тогда чем-то ещё придётся жертвовать.


S> > S>С чего это?


S> >

S> > Неделю на сериализацию. Месяц на создани собственного сетевого протокола. Месяц на написание
S> > собственного хранилища данных. Неделю еще на что-то. Ведь мы люим велосипеды, не?
S> > В итоге прошел год — куча велосипедов, из них половина не протестирована, а проект не сдивнулся с
S> > мертвой точки ни на шаг

S> Ни на шаг? Ну эт ты загнул.


Не загнул.

Лучше будет и туда и туда выделить не по паре дней а по неделе



Так может говорить только человек, который никогда в жизни не написал ни одной работающей и использующейся в более, чем одном месте, программы сложнее hello world

S> Спешка нужна только при ловле блох. Ну еще дотнетчики спешат кудато вечно.


Никто никуда не спешит. Просто надо использовать мозг при разрботке, а не писать велосипеды на каждый чих
avalon 1.0rc1 rev 239, zlib 1.2.3


dmitriid.comGitHubLinkedIn
Re[39]: Уточнение уточнения
От: Mamut Швеция http://dmitriid.com
Дата: 11.06.09 17:50
Оценка:
S> > S> > Шеридан, ты все же ответь на вопрос, как ты будешь сохранять данные с циклическими ссылками,

S> > S> Не знаю, думаю — флаги какие нибудь прикручу, а что?


S> > Ключевой момен выделен


S> А вот если же понимать мою фразу не дословно, а смысл, то можно уверенно сказать что там написано "Еще не решил, что лучше"


Ты и не сможешь решить, что лучше, так как понимаешь сущности проблемы.


S> > S> > а также как ты будешь сохранять указатели.

S> > S> Надо сохранять не указатели, а данные, хранящиеся там.
S> > Верно, но не до конца. Потому что, восстанавливая, ты должен получить структуру с указателями на
S> > эти данные. Не говоря уже о том, что эти данные сами могут быть достаточно сложными структурами,
S> > да еще и зацикленными друг на друга.

S> Что мне мешает создавать эти структуры по мере загрузки данных? Ты? Ты — не мешаешь совсем.


Я не про создавать. Я про сохранять. В последней структуре — ссылка на данные первой структуры. Вперед, рассказывай. С учетом выдеенного выше.

S> > В итоге твой код, способный созранить и восстановить такую структуру, разрастется неимоверно и на

S> > определенном этапе тебе все равно придется вносить «мусор» — те же флаги.

S> Ну уж извините. У меня мусора там будет на порядки меньше, чем при любой сериализации.


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

Кстати, что з мусор ты увидел в приведенной мной статье?

S> > S> Это какие? Сложно уследить за порядком сохранения-чтения? Ну да, ну да...


S> >

S> > Сохрани мне std::list<my_class *>
S> > Порядок чтения у него, ага

S> Приблизительно так:

S>
S> std::list<my_class *> mc;
S> ...
S> foreach(my_class *c, mc)
S> {
S>  c->save();
S> }
S>



Угу. То есть на каждый класс, который, не дай бог, будет сохрняться, надо будет писать тонны никому не нужного кода, специфичного для каждого данного класса?

Кстати. Как ты отделшь одни данные от других? То есть


class my_class {
public:
   int a;
   char *b;
   std::list<basic-String<whcar_t*> > li;
}

class A {
public:
   std::list<my_class *> mc 
}


main(){
   A *a = new A();
   a -> save();
}


Как ты будешь отделять одни данные от других?


S> > Так вот, тем способом, что ты сохраняешь данные ты не сможешь прочитать UTF-16 строку. Ты даже не

S> > сможешь гарантированно прочитать UTF-8 строку. Ты будешь обязан сохранить с этой строкой как
S> > минимум следующие данные: — тип строки — кодировка
S> > — тип нормализации (для UTF-8)
S> > И только потом — саму строку. Именно поэтому сохранение данных aka сериализация — то не просто
S> > «записал—считал»

S> Ну слава богу. Ты еще способен трезво думать.


Я изначально трезво думаю. Только ты тут чушь про «будем просто по символу читать» пишем

S> 256 кодировок хватит? Ну значит хватит 1 байта для сохранения типа кодировки.


Вау. То есть оказалось, что достаточно только подумать и сразу появляется тот самый ненавистный «мусор».

1 байт — на кодировку. 1 байт — на тип строки (она — не обязательно zero-terminated). 1 байт — на endianness. 1 байт — на тип нормализации (ты же даже не в курсе про формы нормализации). Итого «мусора», который ты так поносишь, все набирается и набирается. И это — для «простейшего» типа данных «строка»

Кстати, вопрос на засыпку. Как ты этот 1 байт кодировки отличишь от простого int? То есть, грубо говоря:

13 13 13 13


Что из этого — int, а что — начало строки с определением кодировки?


S> > S> Мамут, там все красиво конечно описано. Только это не мой случай там описан.

S> > Там описан именно твой случай. Проблемы, что я процитировал, относятся именно к твоему случаю.

S> Нет. Я не сохраняю объекты. Я сохраняю их данные.


Ты сохраняешь какие-то сферовакуумные данные?

S> > Ты — все-таки клинический идиот, да простят меня модераторы.

S> Нет, Мамут, это не так

Это так. Вернее, ты — абсолютный ламер в программировании, но воинствующий, что еще хуже.

S> > Сериализация — это сохранение

S> > данных. С «мусором» или без него — это способ реализации такого сохранения. Твой способ «без
S> > мусора» работает только для простейших типов данных и встроенных типов. Для всего отсального он н
S> > работает

S> Сериализация это сохраниение состояния объекта, о чем первой-же строкой указано по той ссылке: "Иногда нужно сохранить

S> состояние класса в файл, передать состояние класса по сети." Сохранение состояния класса всетаки != сохраанение данных класса.

Что такое, по-твоему, состояние класса?

S> По ой-же ссылке самый максимально свободный от мусора формат — все равно текстовый. А у меня будет бинарный.


Укажи там мусор и скажи, почему он является мусором?
avalon 1.0rc1 rev 239, zlib 1.2.3


dmitriid.comGitHubLinkedIn
Re[14]: Коробочные продукты на .NET (НЕ для программистов/ад
От: yuriylsh  
Дата: 11.06.09 17:53
Оценка:
Здравствуйте, hattab, Вы писали:

H>Нет, следуя моей логике все наоборот: раньше не тормозило, стали по кускам переписывать под .NET (а там, насколько я наслышан .NET'овских "кусков" таки не мало -- редактор, главное орудие программиста, под WPF) стало тормозить. Выводы?


И какие у тебя были выводы?

So why is the thing slower if it’s so much better?

Well let me elaborate a little more, but before I answer that directly, first let me tell you what things are almost certainly not the problem.

Not the problem #1: WPF

With the exception of some cases where we found that remoting WPF primitives over terminal server connections was slow, generally the WPF system is more than capable of keeping up with the editor. If you are seeing sluggish typing WPF is almost certainly not to blame.

Not the problem #2: Editor Primitive Operations.

The basic insert primitives are blazing fast, as low as a few microseconds even in very large files. If you’re seeing a problem, the chances that the text buffer is letting you down are slim to none.

Ok, so, if it’s not those things, what is it? There’s two good bets.

Compatibility Shims

The new editor is managed, and it has its own brand new managed interface. You can call it directly. However, there is lots of existing code that knows how to talk to the OLD editor and the old editor had a COM interface with its own particular API. We didn’t want to port all of the editor related code to the new editor’s managed interfaces – for several reasons but perhaps the most important is that there’s just so much of it. So we created a compatibility layer – shims – that allow old callers to use the new editor. That’s also important for our partners out there. That’s all fine and well but of course that means you’re going to be forced to use COM-interop where there was none before and of course those shims have to emulate the old editors behavior even when that wasn’t exactly the fastest choice in the west.

Event Listeners

Another reason why the editor can get bogged down is that various clients can register for notifications of interesting events. This is actually very popular (understatement) and important things like the language’s intellisense services want to be notified of various things going on in the buffer. Now it turns out that the actual editing primitives are so fast that the bulk of the cost of doing edits is actually in these various event processors. Sometimes because they are using shims, sometimes just because they are being over-aggressive in subscribing to things. Sometimes because they have their own personal problems that are only incidentally related to editing.

One way that you can see the difference in the root cause of editing yourself is to try your editing operations in a file named ‘foo.txt’ rather than ‘foo.cs’ or ‘foo.vb’ or whatever the case may be. This will disable many of the event listeners and give you a truer feel for what the editor itself is doing. Even that isn’t perfect because of course there are still listeners for bookmarks, and other kinds of things that are applicable to even plain text files.


Теперь какие у тебя выводы?

H>Paint.NET продукт-визитка (если есть сомнения, читать историю создания и думать), кто этого не понимает, увы...


Читаю:

It started development as an undergraduate college senior design project mentored by Microsoft, and is currently being maintained by some of the alumni that originally worked on it. Originally intended as a free replacement for the Microsoft Paint software that comes with Windows, it has grown into a powerful yet simple image and photo editor tool.


Ну и чья это визитка? Пержде чем ответить, советую ознакомиться что такое senior design project в американском образовании и что такое mentorship в американском образовании.
Luck in life always exists in the form of an abstract class that cannot be instantiated directly and needs to be inherited by hard work and dedication.
Re[45]: Уточнение уточнения
От: Antikrot  
Дата: 11.06.09 17:55
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

>>>> 10 лет * ((кол-во програмистов) * зарплата + содержание) = фирма уходит из бизнеса на второй

>>>> месяц.
>> S>Значит недостойна.
>> Ггг. Недостойна чего? Ты эта, мозгом пораскинь.
S>Недостойна выставлять свой продукт на рынке.
S>Мамут, почему мы обсуждаем мой идеализм?

не путай идеализм и идиотизм. Duke Nukem Forever видимо именно по таким же, как и у тебя рецептам делался.
не будет ни один пользователь 10 лет ждать. даже в разработке линуксового ядра дедлайны есть...
Re: Коробочные продукты на .NET (НЕ для программистов/админо
От: xvost Германия http://www.jetbrains.com/company/people/Pasynkov_Eugene.html
Дата: 11.06.09 18:23
Оценка: 3 (2)
Здравствуйте, Jack128, Вы писали:

MediaPortal (www.team-mediaportal.com)
ИМХО самая лучшая оболочка для медиа-компьютера
С уважением, Евгений
JetBrains, Inc. "Develop with pleasure!"
Re[38]: Уточнение уточнения
От: anton_t Россия  
Дата: 11.06.09 18:23
Оценка: +1
Здравствуйте, Antikrot, Вы писали:

A>Здравствуйте, Sheridan, Вы писали:


>>> a* a1 = GetA(); // или b или с.

>>> a1->save("file.dat");
>>>
>>> a* a2 = ... //<- сдесь живут драконы
>>> a2->load("file.dat");
>>> А теперь сделай этот код работающим, если конечно можешь.

S>>Знаешь, если зарядить в двустволку 12го калибра картечи, навести себе на кисть руки, и нажать оба курка, то ты останешься без

S>>кисти. Другого не дано. Ну разве что осечка случится.
A>Шеридан, не поддавайся на троллинг, посылай всех туда. Тебе осталось только прикинуть, сколько кода для сериализации надо добавить для каждого нового класса в программе. Ну и с зацикливанием разобраться.

А я думал: догадается Шеридан о фабричном методе или не догадается. Не догадался Только тут проблема возникает — что бы этот метод заработал, нужно в формат сериализвции добавить тот самый "мусор", с которым борется Шеридан. А так да, остаётся самая малость
Re[12]: Уточнение
От: LaPerouse  
Дата: 11.06.09 18:25
Оценка:
Здравствуйте, Mamut, Вы писали:

CC>> h>> Крупноват калибр для такой мелочи, не? (ну шо там RAD'ить??? полторы кнопки... песяльна...)


CC>> M>Именно это и RAD'ить. Проще накидать пару кнопочек, связать их evant'ами, чем городить message pump'ы и т.п. на MFC/WTL (или что-там из С++ сейчас под винду используется).


CC>>

CC>> Мда.

M>Что мда? Ну нет на С++ нормальных средств быстрой разработки GUI-приложений. Просто отсутствуют. Ну, за исключением Qt, разве.


Есть. wxWidgets.
Социализм — это власть трудящихся и централизованная плановая экономика.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.