Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: C или python  (Прочитано 14667 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Freezeman

  • Активист
  • *
  • Сообщений: 637
  • Xubuntu 14.04.2 LTS :: SSD Kingston HyperX Fury
    • Просмотр профиля
Re: C или python
« Ответ #30 : 24 Июня 2015, 20:09:39 »
Они нужны в любом языке.  Даже если некоторый гипотетический компилятор для высокоуровневых языков скомпилирует тебе практически что угодно - накладные расходы на выполнение этого кода он за тебя никак не продумает. А как можешь продумать их ты, если не знаешь, как, например, сравниваются строки на более низком уровне?
А чё, компиляторы уже не оптимизируют код?

Примеры кода вам давали. Холивар затянулся, ИМХО.

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Re: C или python
« Ответ #31 : 24 Июня 2015, 20:11:58 »
Ну, у меня переодически лагает Chromium, а написан он на плюсах.
Правильно, ведь лаги зависят от реализации и от оборудования, а уже в сотую долю от языка.
И ошибки и недоработки есть в любом ЯП, только в С++ это все постепенно устраняется, подтверждение тому 11, 12, 14.
Да ну! В плюсах кто-то долго, с заботой и любовью добавлял способы прострелить себе ногу. Вот пример
Код: (cpp) [Выделить]
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

bool temp(int a)
{
return a > 5;
}

int main()
{
if(temp)
{
cout << "Больше\n";
}
return 0;
}
И таких примеров десятки. Зачем? Где может пригодится такое извращение?

Насчёт сборщика мусора: он нужен. Но большинство сначала его отвергает, а потом начинает в который раз изобретать велосипед. Другая часть большинства не строит велосипед, они просто наслаждаются обилием проблем.
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

_Konstantin_

  • Гость
Re: C или python
« Ответ #32 : 24 Июня 2015, 20:16:21 »
alsoijw,
Если кто то решил заняться членовредительством считая, что знает этот ЯП, то флаг ему в руки и книгу Бьерна Страуструпа по С++. В вашем коде есть детские ошибки от незнания ЯП :)
Кстати С++ очень гибок и из-за этого он еще долго будет жить :)
А вот касаемо ошибок и доработок о которых я писал, то посмотрите к примеру STL и ее отличия между 11, 12 и 14 версией, там как раз в основном доработки механизмов :)
« Последнее редактирование: 24 Июня 2015, 20:23:56 от _Konstantin_ »

Оффлайн Komorebi

  • Активист
  • *
  • Сообщений: 475
    • Просмотр профиля
Re: C или python
« Ответ #33 : 24 Июня 2015, 20:28:16 »
Знать все более низкие уровни иногда просто невозможно. А на самых часто встречающихся авторы учебников по тому же самому питону заостряют внимание.
Тем не менее изучение основ С++ способно неплохо так прочистить мозги. Я сам не сишник, не написал на этом языке ни одного проекта, но изучение теории продолжает помогать мне в моем деле.

Цитировать
Я не писал под Qt. Расскажешь в двух словах или скажешь как это называется?
Я не в курсе тонкостей, но QObjectы объединены в одну большую иерархию с родителями и детьми. Если не задать QObjectу родителя вскоре он задестроится. Сам. Естественно дестрой родителя вызовет рекурсивный дестрой всех детей. Ну и всякие смартпоинтеры, конечно, тоже присутствуют.

Цитировать
Качал я несколько игр на питоне, и они нормально шли. Что я сделал не так?
Игр я не качал, просто пользуясь приложениями, написанными на питоне, я замечаю, что работают они всегда медленно.
Не знаю чем там на питоне обычно отрисовывают, но полагаю, что это что-то стороннее, и не имеющее к питону никакого отношения. OpenGL, те же Qt виджеты или qml, ну и так далее.

Пользователь решил продолжить мысль [time]24 Июнь 2015, 21:29:45[/time]:
А чё, компиляторы уже не оптимизируют код?
Оптимизируют, но не переписывают. Чуете разницу?
« Последнее редактирование: 24 Июня 2015, 20:31:07 от Ацетон »

Оффлайн goditsa8

  • Участник
  • *
  • Сообщений: 231
    • Просмотр профиля
Re: C или python
« Ответ #34 : 24 Июня 2015, 20:39:22 »
Да ну! В плюсах кто-то долго, с заботой и любовью добавлял способы прострелить себе ногу. Вот пример
Код: (cpp) [Выделить]
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;

bool temp(int a)
{
return a > 5;
}

int main()
{
if(temp)
{
cout << "Больше\n";
}
return 0;
}
Не очень удачный пример. Программист, который это писал, мог и на питоне без головы остаться. Пусть ТС учит и Питон и Си, больше -- лучше. ))

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Re: C или python
« Ответ #35 : 24 Июня 2015, 20:51:37 »
alsoijw,
Если кто то решил заняться членовредительством считая, что знает этот ЯП, то флаг ему в руки и книгу Бьерна Страуструпа по С++. В вашем коде есть детские ошибки от незнания ЯП :)
Мысли об ошибках в студию. А в этом коде есть детские ошибки?
Код: (cpp) [Выделить]
if(a = b)
Цитировать
Известны 10 преимуществ Паскаля перед Си:) Я приведу только одно, но самое важное. На Си вы можете написать: for(;P("\n").R-;P("\ "))for(e=3DC;e-;P("_ "+(*u++/8)%2))P("| "+ (*u/4)%2); На Паскале Вы НЕ МОЖЕТЕ такого написать.
В нормальном языке(том же самом бейсике) вы не сможите перепутать "сравнить" и "приравнять". Но в плюсах это назвали гибкостью и добавили такую возможность.
Тем не менее изучение основ С++ способно неплохо так прочистить мозги.
Не пачкай, мыть не придётся.
Я не в курсе тонкостей, но QObjectы объединены в одну большую иерархию с родителями и детьми. Если не задать QObjectу родителя вскоре он задестроится. Сам. Естественно дестрой родителя вызовет рекурсивный дестрой всех детей. Ну и всякие смартпоинтеры, конечно, тоже присутствуют.
Не люблю самодеятельность. Вместо того чтобы создать примитивный сборщик мусора(на основе количества ссылок. Количество стало равно 0 - удаляем) тут налицо таймеры(или как это там называют) и куча всего лишнего. Велосипед короче.
Игр я не качал, просто пользуясь приложениями, написанными на питоне, я замечаю, что работают они всегда медленно.
Тогда вопрос: если это приложение написать к примеру на баще, то сильнно быстрее будет?
Не знаю чем там на питоне обычно отрисовывают, но полагаю, что это что-то стороннее, и не имеющее к питону никакого отношения. OpenGL, те же Qt виджеты или qml, ну и так далее.
Ну и что что питоном не отрисовывают? Логика то игры на питоне.
А чё, компиляторы уже не оптимизируют код?
Оптимизируют, но не переписывают. Чуете разницу?
Вот в этом то и дело. Код на плюсах порой так сложно читать... Вот видишь ты знак *, но мгновенно сказать что он означает не можешь...

Пользователь решил продолжить мысль 24 Июня 2015, 20:52:14:
goditsa8, этот пример да.
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

Оффлайн Komorebi

  • Активист
  • *
  • Сообщений: 475
    • Просмотр профиля
Re: C или python
« Ответ #36 : 24 Июня 2015, 22:17:13 »
Не люблю самодеятельность. Вместо того чтобы создать примитивный сборщик мусора(на основе количества ссылок. Количество стало равно 0 - удаляем) тут налицо таймеры(или как это там называют) и куча всего лишнего. Велосипед короче.
По мне как раз наоборот, нет ничего более надежного и логичного, чем иерархия объектов. Сборщик мусора с подсчетом ссылок выглядит тем еще костылем с дополнительными расходами ресурсов.

Цитировать
Ну и что что питоном не отрисовывают? Логика то игры на питоне.
Логика в играх как правило довольно проста и сводится к элементарным вещам, если это не серверная часть какой-нибудь сетевой игры со сложной механикой. Кстати, догадайтесь, пишут ли таковые на питоне? Нет. А почему?
Так что это была за игра?

Оффлайн DenisVASI

  • Автор темы
  • Участник
  • *
  • Сообщений: 116
    • Просмотр профиля
Re: C или python
« Ответ #37 : 24 Июня 2015, 23:26:42 »
Спасибо за интересные мнения, я действительно занимаюсь алгоритмами по книге Томаса Кормена "Алгоритмы. Построение и Анализ". Но я хочу иметь более глубокие познания о синтаксисе, подводных камнях языка и.т.д а не учить его на лету. Был вопрос под какую систему, я использую 14.04, но разве заказчик спросит меня под что я хочу писать.Кроме того откуда поднялся такой вопрос си или Пайтон: мой дед работает на заводе и там недавно автоматизировали работу печи по выплавке металла, писали код, но разве можно такое на Питоне, он ведь не язык системного программирования, а в моей профессии судя по всему мне придётся таким заниматься, и наверное более верно поставить вопрос не какой язык лучше, а какой сейчас актуальнее для этой области. Жду уточнений, спасибо всем

Пользователь решил продолжить мысль [time]25 Июнь 2015, 00:36:24[/time]:
И раз уже говорили про GO, действительно ли он применим, да и вообще за чем ограничиваться этими языками, больше мнений даже лучше ))

Пользователь решил продолжить мысль 24 Июня 2015, 23:39:44:
Ах да и хотел сказать, си я немного знаю, на олимпиаду мне пришлось освоить его синтаксис, я люблю программировать,но как-то после си пайтон мне приятнее
« Последнее редактирование: 24 Июня 2015, 23:39:44 от DenisVASI »

_Konstantin_

  • Гость
Re: C или python
« Ответ #38 : 25 Июня 2015, 07:08:55 »
alsoijw,
Я же написал вам, изучите лучше этот ЯП, что бы потом не смеялся ни кто :) Не обижайтесь, но пример к тому же убогий. Вы пытаетесь привести какие то замудренные примеры доже на Си, но ни кто так не пишет, разве что программист страдающий манией кражи его мыслей :)
Ацетон,
Послушайте, я пишу используя иногда Qt, но не понял о чем вы вообще объясняете. Там все просто - есть классы, есть механизм МОС для реализации слот-сигналов. Из-за механизма МОС разработчикам пришлось написать свое ядро QtCore называется. Но все это С++, нет там ни каких хитрых дестроев и зависимостей. Если создали объект по new, то его нужно уничтожить, не уничтожите получите утечку памяти. Все просто и прозаично, ни какой родитель и потомок не будет этого за вас делать, т.к. в Qt нет сборщика мусора.

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Re: C или python
« Ответ #39 : 25 Июня 2015, 10:54:56 »
alsoijw,
Я же написал вам, изучите лучше этот ЯП, что бы потом не смеялся ни кто :) Не обижайтесь,
_Konstantin_,
изучите лучше "Букварь", чтобы писать "чтобы" (в этом контексте) и "никто" - слитно :) Не обижайтесь. ;D

... мне это сильно напомнило давний анекдот, о курсовой работе в дипломатической академии "нота маленькому африканскому государству":
Цитировать
- Отличная работа, на 5, отличный текст ... только грамматика хромает: "черножопые" следует писать слитно, а "на хер" - раздельно.
:2funny:


Пользователь решил продолжить мысль [time]25 Июнь 2015, 12:06:40[/time]:
Но я хочу иметь более глубокие познания о синтаксисе,
DenisVASI, кстати ...
Известное же дело, что:
Цитировать
Лучше 1 раз увидеть, чем 100 раз услышать.
Вот здесь (ну, по ссылке оттуда, искать некогда) есть сравнение синтаксиса одного и того же кода на 15 разных языках программирования: сравнение 15 языков программирования.
На этом примере можно:
- для начала сравнить "как это выглядит" ... очень разные языки программирования;
- взять и выполнить - и сразу прочувствовать разницу, что такое: компиляция, интерпретация, исполняющая система, виртальная языковая машина, сборка мусора, обработка исключений, множественное присвоение, структуры, объекты и классы, прототипированная объектность и т.д. и т.п.
Мало не покажется. :coolsmiley: (на целые ление каникулы вам занятия хватит ... скучно не будет ;))
« Последнее редактирование: 25 Июня 2015, 11:10:05 от Olej »

_Konstantin_

  • Гость
Re: C или python
« Ответ #40 : 25 Июня 2015, 12:12:59 »
Olej,
Я и не обижаюсь, это камень не в мой огород т.к. за граматикой я не слежу, это делает какой то там плагин, наверное стоит его удалить, но мне просто лень :)
А насчет ошибок допущенных в примере, вижу что обиделись, но не беда, ошибки действительно детские и говорит это только о начальном знании этого ЯП или о личной неприязни к нему и соответственно попытках по любому поводу его очернить, но мне от этого ни грустно ни радостно, ведь показываете указанные мной моменты :) Обратите внимание на if(temp) - что это такое и как это должен расценить компилятор и даже если как то скомпилируете, то как это будет выглядеть в ассемблерном коде? На всякий случай объясню - любой код компилируемый из любого ЯП высокого уровня, транслируется в ассемблер. А зачем в том коде включения
#include <ctime>
#include <cstdlib>

PS. Дальнейший спор думаю стоит прекратить, т.к. вижу уже моменты перехода на личностные оскорбления.
« Последнее редактирование: 25 Июня 2015, 12:18:15 от _Konstantin_ »

Оффлайн Olej

  • Забанен
  • Активист
  • *
  • Сообщений: 884
    • Просмотр профиля
Re: C или python
« Ответ #41 : 25 Июня 2015, 12:29:41 »
А насчет ошибок допущенных в примере, вижу что обиделись, но не беда,
_Konstantin_,
А на счёт ошибок, допущенных в примере, вижу  ;)... что вы, _Konstantin_, ко мне явно неравнодушны и определённо меня с кем-то путаете - я не написал ни единой строчки кода в примерах. :2funny:
Я уже достаточно отписал своих тысячи и тысячи строк кода в реальных проектах и на разных языках, чтобы ещё этим заниматься и в форумах.

_Konstantin_

  • Гость
Re: C или python
« Ответ #42 : 25 Июня 2015, 12:35:56 »
А насчет ошибок допущенных в примере, вижу что обиделись, но не беда,
_Konstantin_,
А на счёт ошибок, допущенных в примере, вижу  ;)... что вы, _Konstantin_, ко мне явно неравнодушны и определённо меня с кем-то путаете - я не написал ни единой строчки кода в примерах. :2funny:
Я уже достаточно отписал своих тысячи и тысячи строк кода в реальных проектах и на разных языках, чтобы ещё этим заниматься и в форумах.
вы встали на защиту alsoijw, я и подумал вы одна команда :) если не так то извиняюсь, но только странно как то, меня вы тыкаете на грамматические ошибки, а alsoijw не указываете на ошибки в приведенном примере, из-за чего и произошел спор :) тогда уж подскажите ему со своим опытом тысячи и тысячи строк кода в чем он не прав, а то спор не по теме получается...

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Re: C или python
« Ответ #43 : 25 Июня 2015, 13:40:35 »
По мне как раз наоборот, нет ничего более надежного и логичного, чем иерархия объектов. Сборщик мусора с подсчетом ссылок выглядит тем еще костылем с дополнительными расходами ресурсов.
Вопрос: неужели так много требуется ресурсов для подсчёта ссылок? Ведь код с проверкой количества родителей содержит в себе подсчёт количества ссылок + таймер. Как пример программа которая ждёт чего-то.
Логика в играх как правило довольно проста и сводится к элементарным вещам, если это не серверная часть какой-нибудь сетевой игры со сложной механикой. Кстати, догадайтесь, пишут ли таковые на питоне? Нет. А почему?
Можно подумать что утилиты написаны только на питоне.
Так что это была за игра?
Не одна, а много. Тогда я интересовался питоном и искал информацию по pygame.
Кроме того откуда поднялся такой вопрос си или Пайтон: мой дед работает на заводе и там недавно автоматизировали работу печи по выплавке металла, писали код, но разве можно такое на Питоне, он ведь не язык системного программирования, а в моей профессии судя по всему мне придётся таким заниматься, и наверное более верно поставить вопрос не какой язык лучше, а какой сейчас актуальнее для этой области.
Может быть на чём угодно.
alsoijw,
Я же написал вам, изучите лучше этот ЯП, что бы потом не смеялся ни кто :)
Смех без причины признак...
Не обижайтесь, но пример к тому же убогий. Вы пытаетесь привести какие то замудренные примеры доже на Си, но ни кто так не пишет, разве что программист страдающий манией кражи его мыслей :)
Что означает выделенное слово?
Обратите внимание на if(temp) - что это такое и как это должен расценить компилятор и даже если как то скомпилируете, то как это будет выглядеть в ассемблерном коде? На всякий случай объясню - любой код компилируемый из любого ЯП высокого уровня, транслируется в ассемблер.
Спасибо за очевидный факт.
А зачем в том коде включения
#include <ctime>
#include <cstdlib>
Мне просто было лень удалять. Я дописал код в уже существующий файл.
вы встали на защиту alsoijw, я и подумал вы одна команда :) если не так то извиняюсь
Давай не будем придумывать, говорить что нам показалось. А то не красиво получается.
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

_Konstantin_

  • Гость
Re: C или python
« Ответ #44 : 25 Июня 2015, 13:49:26 »
alsoijw,
Давайте не будем, и перестаньте переходить на личности, если я вставил смайлик смеющийся то это не значит, что я над вами смеюсь, это знак дружелюбия, а не агрессии :)
доже=даже :) очепятка...
и все таки потрудитесь все выпады с вашей стороны в мою сторону, после того как я вам сказал про ошибки в коде, проанализировать и хотя бы извиниться...

 

Страница сгенерирована за 0.038 секунд. Запросов: 25.