Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.63/546: Рейтинг темы: голосов - 546, средняя оценка - 4.63
бжни
 Аватар для alex_x_x
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
29.09.2011, 19:31
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от List2006 Посмотреть сообщение
объявляй их перед использованием (принцип в С++), речь тут шла про тело условий.
это принцип ANSI C, который просто не позволяет иного объявления, кроме как в начале подпрограммы, ++ как раз снимает это ограничение
это я к тому, что странно это называть принципом ++
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.09.2011, 19:31
Ответы с готовыми решениями:

Какой язык программирования лучше? (3)
Продолжение темы

Какой язык программирования лучше? (2)
Продолжение темы. Начало

Какой язык программирования лучше для создания игры???
Какой язык программирования лучше для создания игры, С++ или С#???

991
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
29.09.2011, 19:35
Цитата Сообщение от M128K145 Посмотреть сообщение
На сколько я понял, то вы утверждаете, что объявление переменных в теле if не есть гуд
Если не секрет, где ты это вычитал? Насколько я себе представляю, он вообще о другом говорит. Что-то там про это дело тарас атавин вещал (он в игноре, так что сужу только по цитатам), а List2006 ему возразил. И нигде он не утверждал, что объявлять переменные внутри блоков - не айс. Он лишь утверждал, что НЕ айс - это когда язык НЕ требует объявлять переменные, в чём я полностью с ним солидарен.

Цитата Сообщение от alex_x_x Посмотреть сообщение
это принцип ANSI C, который просто не позволяет иного объявления, кроме как в начале подпрограммы
На самом деле в начале любого контекста, заданного фигурными скобками. На момент изобретения языка Си это было разумное ограничение. Потому как на всяких паскалях да оберонах действительно можно было задавать локалы только в начале процедуры
0
бжни
 Аватар для alex_x_x
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
29.09.2011, 19:43
Цитата Сообщение от Evg Посмотреть сообщение
На самом деле в начале любого контекста, заданного фигурными скобками.
да, точно
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
29.09.2011, 19:48
Цитата Сообщение от Evg Посмотреть сообщение
Если не секрет, где ты это вычитал?
Здесь
Цитата Сообщение от List2006 Посмотреть сообщение
А лучше потому что строго типизированы и не позволяют такие вольности как объявить перемену в условиях (if...else)
И следующие посты начиная с 443 и до середины 447.
Но судя по
Цитата Сообщение от Evg Посмотреть сообщение
На самом деле в начале любого контекста, заданного фигурными скобками. На момент изобретения языка Си это было разумное ограничение. Потому как на всяких паскалях да оберонах действительно можно было задавать локалы только в начале процедуры
начинаю понимать, что понял что-то не так Если да, то приношу свои извинения
0
19 / 19 / 4
Регистрация: 18.02.2011
Сообщений: 292
29.09.2011, 19:49
Я думаю лучше C++
0
24 / 16 / 3
Регистрация: 19.12.2009
Сообщений: 366
29.09.2011, 21:34
Evg я и так и так имел ввиду (и в условиях, и принудительное объявление).
Про условие говорить не хочу, уже расписал.

Просто это в 20 строчках может быть удобным, но когда код "мегабайтный", встает вопрос, а создана была ли эта переменная в текущем контексте выполнения или нет?

Был случай где автор объявлял переменную в условие "истино", про ложный вариант автор не подумал видима, и в определенно ситуации его код завалился.
Не проще ли объявить переменную перед условием, а в условиях уже изменять?

В языке где такое возможно, логика сводиться к тому что не только нужно проверять условие, но и проверять существование переменной.
То есть что я говорю сейчас и тогда, это "не разу не круто".

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


PS данное обсуждение ответвилось от обсуждение "ужаса" использование Си в веб программирование. Суть уже раскрыта, автор не возражает, поэтому сейчас спор может уйти не туда. То есть я не сравнивал языки и нотации, я пытался доказать что php даже хуже чем Си для веб программирования, а не наоборот как говорят многие.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 08:13
Цитата Сообщение от List2006 Посмотреть сообщение
Просто это в 20 строчках может быть удобным, но когда код "мегабайтный", встает вопрос, а создана была ли эта переменная в текущем контексте выполнения или нет?
На плюсах по-моему нет понятия контекстов выполнения.

Добавлено через 3 минуты
Цитата Сообщение от List2006 Посмотреть сообщение
Когда пишешь С++, создается ощущение что используешь точный научный инструмент,
Но объявить на плюсах переменную можно даже в цикле, тем более в условии, хотя ни один вменяемый плюсовик этим не пользуется. Можно вообще объявить переменную перед закрывающей скобкой.

Добавлено через 3 минуты
Цитата Сообщение от List2006 Посмотреть сообщение
PS данное обсуждение ответвилось от обсуждение "ужаса" использование Си в веб программирование.
Не верю, что он вообще возможен. А вот писать на php, например, игру - вот где ужас, даже если она походовая, как шахматы. Вообще прога, закрывающаяся внутри сеанса из-за того, что она завершила отдельную неэлементарную операцию уровня пользовательских команд, гарантирует ужас, а если это ещё и языком навязывается, так и подавно. Я хочу научиться писать веб на плюсах и полностью отказаться от php и вообще от серверных скриптов. Беда в том, что у меня напрочь отсутствует всякая инфа по поддержке не только протокола, но и сокетов на плюсах. В php же это уже готово, в замен возможности взаимодействия с клиентским скриптом.

Добавлено через 6 минут
Цитата Сообщение от M128K145 Посмотреть сообщение
Просто спрашивается, зачем вытягивать длинную портянку переменных в глобальную область, которые юзаются только в узком кейсе?
Это удобнее, чем потом вспоминать, где закрылась область видимости объявленной в данной подпрограмме переменной, если тебе потом вдруг всё же понадобиться обратиться к ней не под ифом. Иф не решает самостоятельную подзадачу, а лишь разветвляет алгоритм решения подзадачи, решаемой подпрограммой. И получается: есть подзадача, а в ней есть величина.

Добавлено через 3 минуты
Удобнее всего эту величину объявить в начале части программы, отвечающей за эту подзадачу, то есть в начале подпрограммы. На полюсах тоже можно объявлять переменные в любом месте. А знаешь, почему этим ни кто не пользуется, а все объявляют в начале? Потому что декларировать что либо после хотя бы одной операции нелогично, не удобно и ведёт к тормозам разработки.

Добавлено через 4 минуты
Цитата Сообщение от Evg Посмотреть сообщение
Jupiter, я так понимаю, что речь шла об этом:
Речь ваще об этом:
C++
1
2
3
4
5
6
int x;
int y;
int z;
z=x+y;
int d;
d=z-2.0/y;
, об этом
C++
1
2
3
4
5
int y=1;
for (int x=0; x<10; ++x)
{
 y*=x;
}
и об этом:
C++
1
2
3
4
5
6
int x;
if (x>0)
{
 int y;
 y=x/4;
}
Добавлено через 3 минуты
Цитата Сообщение от List2006 Посмотреть сообщение
Я твоя не понимать?
Я хочу сказать, что любая программа в любом случае - текст, не зависимо от языка.

Добавлено через 1 минуту
Цитата Сообщение от List2006 Посмотреть сообщение
И что такого? Нет на пыхе пишут дергая функции, причем аналогичные Си и не че, а тут "о ужас на чистых сях".
Давно уже людьми пишутся не home-page сайты, и на практике такие как С/С++ лучше.
А лучше потому что строго типизированы и не позволяют такие вольности как объявить перемену в условиях (if...else) или создать другие костыли с типами. PHP - не создан для больших проектов (можно, но ужасно если в группе не профессиональные программисты). А книги по пых готовят легионы, которые вставляют классы куда не поподя, не понимая вообще парадигму ООП.
Расскажи, как ты это делаешь?

Добавлено через 1 минуту
Я тоже так хочу. а пишу на php только от незнания.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
30.09.2011, 11:07
php и ему подобное - это всё-таки специализированные языки (т.е. созданные для некоторого конкретного класса задач, а не универсальные). И авторами навряд ли предполагалось, что на них кто-то будет писать большие проекты
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 13:18
Цитата Сообщение от Evg Посмотреть сообщение
что на них кто-то будет писать большие проекты
Вот именно. Гигантские сайты - в том числе. Эти языки предназначены только чтоб быстро накидать страницу с обработкой, но минимальной.
0
24 / 16 / 3
Регистрация: 19.12.2009
Сообщений: 366
30.09.2011, 14:58
Цитата Сообщение от taras atavin Посмотреть сообщение
На плюсах по-моему нет понятия контекстов выполнения.
Может я задел какой-то термин, если да то извиняюсь, но под контекстом выполнения я имел ввиду одно из ветвлений (ниже будет понятно о чем я).

Цитата Сообщение от taras atavin Посмотреть сообщение
Но объявить на плюсах переменную можно даже в цикле, тем более в условии, хотя ни один вменяемый плюсовик этим не пользуется. Можно вообще объявить переменную перед закрывающей скобкой.
Понял я в чем балаган, это моя вина, не дополнил информацию. По ходу тока Evg уловил мой "месседж". Да так можно в плюсах, переменная объявляется в блоке и там же умирает - жертв нет, но в php нету понятие блоков и автоматической памяти, объявив в условии - идентификатор мона использовать по всему коду. Вот про это говорил, это зло и оно создает абстрактное ветвление (то есть разные условия (контекст) выполнения из-за таких идентификаторов).



Далее холливар
Цитата Сообщение от taras atavin Посмотреть сообщение
Я хочу сказать, что любая программа в любом случае - текст, не зависимо от языка.
Программа это "просто текст" быть может для моей подруги, или друга слесаря, но для программиста это не просто текст, смотря в эти замысловатые формулы он видит события которые будут где-то в каком-то месте исполнятся (и он знает что это за место).
Это как в фильме матрица - они смотрят на летящие знаки и видят что там происходит, так же скажем верстальщик на html пишет свои блоки html, а в голове у него конечная картина - и эта картина НЕ БЛОКОВ! а картина сайта в браузере.

Так что говорить что это просто текст думаю не правильно. Это исходный код, "исходный" от чего более "крупного"... ну если для вас это просто текст, то вам наверно быстро наскучит эти буковки вбивать , потому что для вас это просто буковки, а не часть чего-то большего.



Цитата Сообщение от taras atavin Посмотреть сообщение
Расскажи, как ты это делаешь?
Я тоже так хочу. а пишу на php только от незнания
Не надо искажать мою мысль и потом требовать объяснения, я уверен вы используете этим инструментом профессионально, но я статистически привык сталкиваться не совсем с "программированием" - а скорее всего выхлопом чьего-то мозга, и этот выхлоп я связал со многими книгами которые я читал.
Проблема тут в том что такие книги давно перестали быть учебниками, а стали больше средствами заработка для их авторов.
Конечно тут есть и другие факторы, - лень юных программистов и отсутствие желания чему-то учиться .

PS думаю понятно когда говорю такие книги я не имею ввиду все книги, а слово "юный" программист - человека не юного по возрасту, а юного по опыту и времени его становления программистом.


Вот именно. Гигантские сайты - в том числе. Эти языки предназначены только чтоб быстро накидать страницу с обработкой, но минимальной.
Так мы и обсуждаем эту проблему - почему скриптовые языки используются взамен "профессиональных" (кавычки тут не спроста).
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
30.09.2011, 15:13
Цитата Сообщение от List2006 Посмотреть сообщение
Программа это "просто текст" быть может для моей подруги, или друга слесаря, но для программиста это не просто текст, смотря в эти замысловатые формулы он видит события которые будут где-то в каком-то месте исполнятся
Он видит эти события за текстом потому, что для него это осмысленный текст. Но всё таки текст и он всегда пишется и читается.

Добавлено через 2 минуты
Цитата Сообщение от List2006 Посмотреть сообщение
ну если для вас это просто текст, то вам наверно быстро наскучит эти буковки вбивать , потому что для вас это просто буковки, а не часть чего-то большего.
Не наскучит. Для меня это буковки и циферки, несущие определённый смысл. И мыслю я не отдельными буквами, а целыми операциями и не всегда элементарными, а часто и подзадачами. Но в плане средств выражения этой подобной мысли все языки предлагают текст.

Добавлено через 2 минуты
Цитата Сообщение от List2006 Посмотреть сообщение
я уверен вы используете этим инструментом профессионально, но я статистически привык сталкиваться не совсем с
Да нет, на php я пишу очень криво и хочу вернуться с него на плюсы даже в области разработки сайтов.

Добавлено через 57 секунд
Цитата Сообщение от List2006 Посмотреть сообщение
Конечно тут есть и другие факторы, - лень юных программистов и отсутствие желания чему-то учиться
Мне намного ленивее учить php, чем новые способы применения плюсов.
0
24 / 16 / 3
Регистрация: 19.12.2009
Сообщений: 366
30.09.2011, 15:26
Цитата Сообщение от taras atavin Посмотреть сообщение
Не наскучит. Для меня это буковки и циферки, несущие определённый смысл.
Цитата Сообщение от taras atavin Посмотреть сообщение
что для него это осмысленный текст
Ну так я вам про это говорю, что это не просто текст для программиста.

Цитата Сообщение от taras atavin Посмотреть сообщение
все языки предлагают текст.
Ну так все чертежи предполагают линии. Значит чертеж здания для вас это набор линий?

Цитата Сообщение от taras atavin Посмотреть сообщение
Да нет, на php я пишу очень криво и хочу вернуться с него на плюсы даже в области разработки сайтов.
Тут я всеми руками только за, на данном этапе не хватает только облегчающих библиотек, или смены концепции (например выполнить движок сайта ввиде демона, но не объединяя http-сервер (аналог FastCGI), или ввиде модуля http-сервера - в любом случае использовать такой продукт (библиотека) будут проекты с высокой нагрузкой и так же проекты бюджетные, у которых профит не главная цель).
0
Йошь-мыслитель
 Аватар для Xander Bass
126 / 120 / 26
Регистрация: 22.02.2009
Сообщений: 706
Записей в блоге: 5
30.09.2011, 21:30
И всё же интересно было бы увидеть CMS на компилируемом ЯП Интересно точнее было бы понять как оно будет ставиться на сервер.
0
24 / 16 / 3
Регистрация: 19.12.2009
Сообщений: 366
30.09.2011, 22:11
Цитата Сообщение от Xander Bass Посмотреть сообщение
И всё же интересно было бы увидеть CMS на компилируемом ЯП Интересно точнее было бы понять как оно будет ставиться на сервер.
Что там не обычного, точно так же и будет работать

Инсталляция запускаешь некий "install.cgi" и программа по средством веб интерфейса распаковывается и инсталлируется - тоже самое в общем что и обычно CMS.

Можно сделать установку как обычную программу в консоли (даже в GUI), в общем как захочет автор, но у прикладного ПО возможностей больше.
0
Йошь-мыслитель
 Аватар для Xander Bass
126 / 120 / 26
Регистрация: 22.02.2009
Сообщений: 706
Записей в блоге: 5
30.09.2011, 23:26
Цитата Сообщение от List2006 Посмотреть сообщение
распаковывается и инсталлируется
Вот интересно куда она будет распаковываться? Насколько я понимаю данную концепцию, подразумевается работа именно с CGI.
0
исследователь
325 / 104 / 3
Регистрация: 18.03.2010
Сообщений: 1,079
Записей в блоге: 2
30.09.2011, 23:46
После окончательного перехода на Linux я для себя за выбрал Python за мощность и кроссплатформенность.
0
24 / 16 / 3
Регистрация: 19.12.2009
Сообщений: 366
01.10.2011, 01:07
Цитата Сообщение от Xander Bass Посмотреть сообщение
Вот интересно куда она будет распаковываться? Насколько я понимаю данную концепцию, подразумевается работа именно с CGI.
А в чем проблема то или чисто потроллить? Ну не хочешь можно использовать концепцию "залей все, установи и удали папку install" как в классической cms.
0
Йошь-мыслитель
 Аватар для Xander Bass
126 / 120 / 26
Регистрация: 22.02.2009
Сообщений: 706
Записей в блоге: 5
01.10.2011, 02:30
List2006, я вот про что говорю: PHP, равно, как и прочие интерпретируемые серверные языки выполняется интерпретатором на стороне сервера. Сам интерпретатор может быть установлен где угодно на сервере, только не там, куда имеет доступ конечный пользователь хостинга. Однако, интерпретатор PHP обычно предустановлен всегда, и клиент пользуется уже установленным ПО. Поэтому в этом случае проблема доступа куда-либо, кроме своей папки, для него не актуальна. А в случае с использованием программных модулей созданных на основе компилируемого ЯП пользователь так или иначе сталкивается с проблемой установки на сам сервер требуемого ПО. Или хотите сказать, что Вы тупо закинете всё в папку cgi-bin и оно сразу будет работать?
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
01.10.2011, 07:22
Во-первых натив тоже можно кинуть в ту самую папку. На LINUX все пользователи точно также имеют доступ только к своим каталогам, но если прога уже собрана для этой системы, то её можно туда и кинуть и запустить. Я так уже делал. А в чём принципиальная разница? Кинул, потом зателенился и запустил. Проблема вообще не в доступе, а в исполнении: php интерпретатор на всех поддерживающих его хостингах уже запущен и исполняется, а вот дадут ли исполнять натив - тот ещё вопрос. Зателенился на вторую хату? Эйси. А какие команды тебе разрешены? Запуск файлов может в их число и не входить. А во-вторых и эта проблема, и ограничение доступа существуют далеко не всегда. Существуют выделенные сервера, как виртуальные, так и физические, можно также всё разместить на своём компе со статическим адресом. У меня, например, статический адрес и хороший канал.
0
 Аватар для xAtom
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
01.10.2011, 14:00
Цитата Сообщение от taras atavin Посмотреть сообщение
Мне намного ленивее учить php, чем новые способы применения плюсов.
Во первых компилируемый C/C++ CGI давно устарел из-за не выгодности, почему выбирают PHP или ASP самое главное их работа, при запуске исполнительного CGI создаётся новый процесс, а в php, asp используют многопоточность-потоки для обработки отдельного скрипта, а как должен всякий знать прогер что на создание потока внутри процесса требует меньше ресурсов системы, чем создание отдельного процесса и при том к потокам прикручивают пул для оптимизации. Приемущество PHP в том что прогеру скрипта не нужно заботиться на какой системе его скрипт будет выполняться(для каких систем написан интерпретатор-PHP на тех везде и всё будет выполняться), по сравнению с двоичным CGI для Windows-сборка нужна, для FreeBSD, для Unix и т.д.
taras atavin, для Windows и сейчас можно писать на MS VС++ в проекте IISAPI или ATL Server также у него многопоточная обработка модулей. Мне интересно самому посмотреть форумный движок написанный на C/C++ CGI или C++ ATL Server.
Цитата Сообщение от List2006 Посмотреть сообщение
Тут я всеми руками только за, на данном этапе не хватает только облегчающих библиотек
Ты ведь говорил, работа в web-программирование это просто текст, что тут сложного. Cам Расмус Лердоф создатель PHP, хотя не плохо знал язык C но создал облегчение для поддержки своего сайта.
P.S. Вывод нужно делать после собственного опыта работы, а не говорить что хуже а что легче.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.10.2011, 14:00

Какой язык программирования мне ст0ит учить?
... оканчивю мат. школу, и хочу поступить на программиста. Программирую (неплохо) на Паскале. Что мне нужно? Може С++? Или...?

Какой язык лучше / прибыльнее?
И так, мне 16 лет, седня днем пойду подавать документы в техникум на программиста соответственно. И назрел вопрос какой язык...

Какой язык веб-программирования выбрать? Плюсы\минусы
Вопрос что ни на есть из раздела священных, но все же... Какой язык веб-программирования кто предпочитает? У кого какие плюсы и...

Какой язык лучше изучать C или C++
Всем здравствуйте! Я новичок в программировании(знаю только Паскаль). Сейчас выбираю, какой язык учить: С или С++. Подскажите, пожалуйста,...

Какой язык лучше изучать с нуля?
Привет Всем!! Ребята подскажите пожалуйста какой язык лучше изучать с нуля ????? За ответ заранее спасибо!!!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
480
Закрытая тема Создать тему
Новые блоги и статьи
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru