Re[9]: И снова про ц++
От: Sheridan Россия  
Дата: 03.02.12 16:03
Оценка:
А, понял.
Актуально, если платят за размер кода, или например за количество непробельных символов
В любом случае нечитаемо при более-менее сложном коде
Matrix has you...
Re[7]: И снова про ц++
От: Cadet  
Дата: 03.02.12 16:04
Оценка:
Здравствуйте, Banned by IT, Вы писали:

XC>>При наличии методов-расширений все получится вообще элементарно. string ToStr(this int x) и т.д.


BBI>А чем не нравится конструктор string (int x)?


Мне не нравится например тем, что нужного конструктора может не быть.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[6]: И снова про ц++
От: Mamut Швеция http://dmitriid.com
Дата: 03.02.12 16:09
Оценка:
AVL>>>массовым погромистам гораздо проще развешивать лапшу прикрываясь всякими С# 100500 / мета- / фукнциональное программирование / лямбды / монады / linq / макросы / прочая фигня. а да, виртуальные машины забыл, тоже модная тема.
M>>Выделенное — не лапша, а очень удобные инструменты. Которые — ВНЕЗАПНО — тоже появляются в С++
AVL>странно было бы, если бы человек, покусанный яблочным маркетингом, не утверждал, что вся это модная лапша не является удобной
AVL>расскажи что там внезапно появилось в плюсах (можно без лямбд, хотя кому они нужны там...), что тебя на капс пробило.

Появились лямбы, а с ними (правда, уже давно в виде обобщенного программирования) — функциональное программирование.


dmitriid.comGitHubLinkedIn
Re[8]: И снова про ц++
От: Banned by IT  
Дата: 03.02.12 16:12
Оценка:
Здравствуйте, Cadet, Вы писали:

BBI>>А чем не нравится конструктор string (int x)?


C>Мне не нравится например тем, что нужного конструктора может не быть.

А чем это отличается от того, что функции ToStr для типа int (чтоб вызывать как 10.ToStr ()) может не быть?
Если писать самому так почему не написать string ToStr (int x)?
Какой смысл вот в этом изврате с 10.ToStr () ?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[7]: И снова про ц++
От: Mamut Швеция http://dmitriid.com
Дата: 03.02.12 16:16
Оценка:
Ф>>строки должны быть единственными
BBI>Вот есть у тебя единственный формат строк. И входные/выходные данные в UTF8 и UTF32. Как с ними будешь работать? Приводить все к UTF16 а потом назад?

Да. Если все упирается только в конвертацию, можно обойтись написанием одной функции для конвертации. А не изобретать для этого очередной, ни скем не совместимый велосипед.


ЗЫ.

Помнится, писал я на Qt программку для работы с симантековской факсовой программой. Qt — это QString, факсовая программа — COM-интерфейсы с, соотсветсвенно, BSTR, или как он там называется. В общем, QString <-> BSTR без потери данных выполняется только при помощи какой-то матери (ЕМНИП, через другой промежуточный тип, возможно, через тот же std::string, а то и через что похуже).

Про программную отсылку почты в условиях русской фирмы, работающей на турецкой земле, я тоже умолчу. Путь GUI -> почта без потери данных можно пройти только джедаям.


dmitriid.comGitHubLinkedIn
Re[3]: namespace'ы в классах
От: Mamut Швеция http://dmitriid.com
Дата: 03.02.12 16:19
Оценка: +2 :)
S>
S>gate ~ # g++ example.cpp -o example
S>gate ~ # ./example
S>Hi, 123!
S>Hi, 123! This is other namespace :))
S>


S>Другое дело что на ненавистных местными дефайнах.... Ну уж это я считаю что они ими пользоваться не умеют...


Когда ты прекратишь слушать голоса в своей голове? То, что ты «нарисовал» — это страшный страх и ужасный ужас со всех сторон — от читаемости до поддержки в будущем


dmitriid.comGitHubLinkedIn
Re[4]: namespace'ы в классах
От: Sheridan Россия  
Дата: 03.02.12 16:34
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Когда ты прекратишь слушать голоса в своей голове? То, что ты «нарисовал» — это страшный страх и ужасный ужас со всех сторон — от читаемости до поддержки в будущем


Я в тебе не сомневался, ты просто обязан был первым ответить на такое, особенно моё
Ничего тут страшного нет ни в читаемости, ни в поддержке, ибо кода в реализации кот наплакал
Matrix has you...
Re[9]: И снова про ц++
От: Cadet  
Дата: 03.02.12 16:53
Оценка: -1
Здравствуйте, Banned by IT, Вы писали:

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


BBI>>>А чем не нравится конструктор string (int x)?


C>>Мне не нравится например тем, что нужного конструктора может не быть.

BBI>А чем это отличается от того, что функции ToStr для типа int (чтоб вызывать как 10.ToStr ()) может не быть?
BBI>Если писать самому так почему не написать string ToStr (int x)?
BBI>Какой смысл вот в этом изврате с 10.ToStr () ?

Смысл именно в том, что нет нужного метода, но ты можешь написать внешнюю функцию, которая при вызове будет выглядешь как метод. К примеру:
var fileContent = File.Read()...
fileContent.RemoveDuplicates().Compress().ToBase64().SendToServer();

ИМХО выглядит сильно читабельнее чем
var fileContent = File.Read()...
SendToServer(ToBase64(Compress(RemoveDuplicates(fileContent))));
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[5]: namespace'ы в классах
От: Cadet  
Дата: 03.02.12 16:58
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

S>Ничего тут страшного нет ни в читаемости, ни в поддержке, ибо кода в реализации кот наплакал


Да в данном месте наплакал конечно. А в реальном проекте, с исходниками мегабайт ну скажем 5, один так наплакал в одном месте, другой в другом, третий в третьем. А потом ты рыдаешь, когда продираешься через это в поисках ошибки.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re: И снова про ц++
От: Artifact  
Дата: 03.02.12 17:28
Оценка: 1 (1) +2 -1
Здравствуйте, Sheridan, Вы писали:

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

Вобщем плох он для быдлокодеров.

На мой взгляд С++ это не готовый язык, это такой набор "Сделай сам", отсюда все и жалобы — мол я хотел уже что-то готовое. Извините, на что вы лично способны, то в результате и получите. Однако людям, то, на самом деле нужен язык вроде Делфи, а не С++, а покупатель всегда прав. С++ слишком сложен — заявляют они. С++ не делает выбор за человека, он не направляет его в единственно правильное и возможное русло и это фактически всё. Если вы уже умеете программировать, то у вас не должно возникнуть проблем с С++. Ну будете ныть, что вам не хватает фишки из языка Х, а в целом будете писать такой же код как вы писали раньше. Если вы программировать ещё не умеете, то С++ вас оному не научит, никто вас не освобождает от необходимости знать зачем, что и как в этом языке устроено, начиная фактически с азов, прежде чем тупо копи-пастить какой-нибудь код из туториала.
__________________________________
Не ври себе.
Re[2]: И снова про ц++
От: hattab  
Дата: 03.02.12 17:42
Оценка:
Здравствуйте, Artifact, Вы писали:

A>Однако людям, то, на самом деле нужен язык вроде Делфи, а не С++, а покупатель всегда прав. С++ слишком сложен — заявляют они. С++ не делает выбор за человека, он не направляет его в единственно правильное и возможное русло и это фактически всё.


Не хочешь ли ты сказать, что та же дельфя делает какой-то выбор, куда-то направляет?
avalon 1.0rc3 build 428, zlib 1.2.3
Re[8]: И снова про ц++
От: ambel-vlad Беларусь  
Дата: 03.02.12 17:44
Оценка: 2 (2) -1
Здравствуйте, Философ, Вы писали:

Ф>>>строки должны быть единственными

Ф>>>а тут только в std уже 2 варианта

O>>32-битных системах весит "аж" 24 байта.



Ф>ржал аки конь


Ага, еще больше ржать будешь когда будешь упираться в ограничения 32bit и надо будет считать каждый байтик.
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Re: И снова про ц++
От: goondick  
Дата: 03.02.12 18:04
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

S>Я вот читаю-читаю, но так и не могу понять — откуда у людей такая нелюбовь к ц++? Указатели? Да фигня это, на пару граблей наступить и рефлекс появится. Зато более шустрый софт получается.

S>Так все же?

это реакция людей ко всему непонятному и что не дано понять...
Re[10]: И снова про ц++
От: Sheridan Россия  
Дата: 03.02.12 20:14
Оценка:
Здравствуйте, Cadet, Вы писали:

C>Смысл именно в том, что нет нужного метода, но ты можешь написать внешнюю функцию, которая при вызове будет выглядешь как метод. К примеру:

C>
C>var fileContent = File.Read()...
C>fileContent.RemoveDuplicates().Compress().ToBase64().SendToServer();
C>


Да ладно? У строки есть метод sendtoserver? Пример крайне неудачен.
Впрочем мысль понятна. Все зависит от мощности используемой библиотеки. Кутэ приближается к описанному тобой.


C>ИМХО выглядит сильно читабельнее чем

C>
C>var fileContent = File.Read()...
C>SendToServer(ToBase64(Compress(RemoveDuplicates(fileContent))));
C>

Не вижу разницы. Одинаково понятно.
Matrix has you...
Re[4]: namespace'ы в классах
От: Sheridan Россия  
Дата: 03.02.12 20:20
Оценка:
Здравствуйте, Mamut, Вы писали:

Кстати, очень хочется увидеть реализацию пространства имен класса на эрланге.
Matrix has you...
Re[5]: namespace'ы в классах
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 03.02.12 20:15
Оценка:
Здравствуйте, Sheridan, Вы писали:

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


S>Кстати, очень хочется увидеть реализацию пространства имен класса на эрланге.


На параметризованные модули уже смотрел?
The God is real, unless declared integer.
Re[6]: namespace'ы в классах
От: Sheridan Россия  
Дата: 03.02.12 20:17
Оценка:
Здравствуйте, netch80, Вы писали:

S>>Кстати, очень хочется увидеть реализацию пространства имен класса на эрланге.

N>На параметризованные модули уже смотрел?

Я вообще на эрланг не смотрел. Покажи код.
Matrix has you...
Re[6]: И снова про ц++
От: koodeer  
Дата: 03.02.12 20:21
Оценка:
Здравствуйте, x-code, Вы писали:

XC>Не. У меня есть объект конкретного класса, у которого внутри сотни методов, полученных ЛЮБЫМ путем, может быть — длинная цепочка наследования, может быть все сразу объявлены, неважно. Я в IDE пишу "obj." и мне автокомплит выдает ПРОСТЫНЮ из методов, отсортированных тупо в алфавитном порядке. А я хочу, чтобы мне выдавалось около 10 внутренних неймспейсов, между которыми методы разгруппированы ПО СМЫСЛУ. Кстати, кроме иерархических неймспейсов можно ввести и "теги", правда это я еще не обдумывал.


О! Мне тоже всегда хотелось чего-то подобного. Действительно неудобно, когда автокомплит выдаёт сразу все члены класса.
Re: И снова про ц++
От: Young yunoshev.ru
Дата: 03.02.12 20:22
Оценка: -2 :))
Здравствуйте, Sheridan, Вы писали:

S>Я вот читаю-читаю, но так и не могу понять — откуда у людей такая нелюбовь к ц++? Указатели? Да фигня это, на пару граблей наступить и рефлекс появится. Зато более шустрый софт получается.

S>Так все же?

Да просто же — никогда нельзя быть уверенным, что вызывая какую любую функцию, ты не получишь сайд эффектов, которые могут изменить вообще все что либо в работающей системе.

Это же лепота — присвоил переменной значение — и уверен что ее никто уже не поменяет, вызвал функцию — и уверен, что она ни на что не повлияет.

А ц++, что — каждый чих потенциально может изменить логику программы в любом месте.

Неее, такое нам не нужно. Нам логических ошибок хватает....
Re[11]: И снова про ц++
От: Cyberax Марс  
Дата: 03.02.12 20:27
Оценка: 1 (1) :)
Здравствуйте, Sheridan, Вы писали:

S>Да ладно? У строки есть метод sendtoserver? Пример крайне неудачен.

Нет, есть extension-метод SendToServer.

S>Впрочем мысль понятна. Все зависит от мощности используемой библиотеки. Кутэ приближается к описанному тобой.

QT ограничен языком.
Sapienti sat!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.