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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Хочу научиться программировать в Linux :)  (Прочитано 30585 раз)

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

LK4D4

  • Гость
Re: Хочу научиться программировать в Linux :)
« Ответ #60 : 25 Июля 2008, 01:15:31 »
И тут началась драка.
Это тоже холивор чтоли?

Оффлайн igel

  • Новичок
  • *
  • Сообщений: 41
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #61 : 25 Июля 2008, 11:55:57 »
У меня вопрос, сильно ли Си отличается от Си++? Заслуживает ли он отдельного изучения?
У Вас не получится изучить C++ и одновременно не изучить C.  8) Другой вопрос, что не для всех задач нужен C++, для многих может хватить и одного C, который, вестимо, проще.  :idiot2:

Оффлайн igel

  • Новичок
  • *
  • Сообщений: 41
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #62 : 25 Июля 2008, 12:07:28 »
Не согласен с igel.
Ну, всё мной сказанное, есть IMHO, основанное на опыте работы в области создания прикладного геофизического ПО. Реально работающих идей, в данной конкретной области, много - до числа доведены единицы. Казалось бы - золотое дно. Ан нет, специалистов способных сделать конкурентоспособный продукт - единицы.

Лучшие из "зубров" могут из своих идей сделать на живую нитку программы для себя, без них они не работают. Молодёжь лихо ваяет интерфейсы, но не способна сделать их эргономичными, поскольку не понимает сути методов и что нужно пользователю. Кроме того, плохо разбирается в способах оптимизации численных методов, что абсолютно необходимо - объёмы данных составляют сотни тысяч измерений, того же порядка число неизвестных, большинство задач - нелинейные.

Когда находится человек объединяющий в себе знания "зубров" и техничность молодёжи и способный внятно ставить задачи помошникам - успех не заставляет себя ждать. Таких команд на нашем рынке знаю две.

Оффлайн Alex2000

  • Активист
  • *
  • Сообщений: 317
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #63 : 25 Июля 2008, 18:47:25 »
У меня вопрос, сильно ли Си отличается от Си++? Заслуживает ли он отдельного изучения?
Сильно, в принципе это разные языки. Но совместимые снизу вверх, то есть программу на С поймет компилятор С++.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #64 : 26 Июля 2008, 09:39:03 »
Тут где-то на форуме аборигены приводили кусочек кода, который понимается Сишным компилятором и не понимается С++ным. Но это было ИМХО извращение, это надо было умудриться написать.
Но тем не менее не везде они так уж совместимы. Опять же стандарты развиваются. так что тут много вариантов.

LK4D4

  • Гость
Re: Хочу научиться программировать в Linux :)
« Ответ #65 : 26 Июля 2008, 19:39:48 »
В свое время прочитал довольно увесистую книжку по С++. И вот в доме книги увидел книжку по С того же автора, того же издательства, так вот она еще более увесиста. Учитывая, что в С++ полкниги занимают ооп и обобщенное программирование, в С должно быть просто немерено каких-то своих хитростей.

Оффлайн Saha

  • Активист
  • *
  • Сообщений: 517
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #66 : 26 Июля 2008, 23:07:44 »
У меня вопрос, сильно ли Си отличается от Си++? Заслуживает ли он отдельного изучения?
Сильно, в принципе это разные языки. Но совместимые снизу вверх, то есть программу на С поймет компилятор С++.

Не вводите людей в заблуждение=)

C (programming language), invented at Bell Labs in 1972
C++ (programming language), an object oriented programming language based on C
(http://en.wikipedia.org/wiki/C_(disambiguation))

Bjarne Stroustrup developed C++ in 1979 at Bell Labs as an enhancement to the C programming language and named it "C with Classes". In 1983, it was renamed to C++. Enhancements started with the addition of classes, followed by, among other features, virtual functions, operator overloading, multiple inheritance, templates, and exception handling.
(http://en.wikipedia.org/wiki/C%2B%2B)

Оффлайн igel

  • Новичок
  • *
  • Сообщений: 41
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #67 : 28 Июля 2008, 11:13:42 »
В свое время прочитал довольно увесистую книжку по С++. И вот в доме книги увидел книжку по С того же автора, того же издательства, так вот она еще более увесиста. Учитывая, что в С++ полкниги занимают ооп и обобщенное программирование, в С должно быть просто немерено каких-то своих хитростей.
Просто детальность изложения, вероятно, другая. Всё "хитрости" доступные в C доступны и в C++.

Что касается совместимости, то C++ несколько строже в плане необходимости объявления функций и явного преобразования типов, поскольку в ООП функция определяется не только именем, но и типами параметров. Т.е. придумать код, понимаемый C и не понимаемый C++ можно, но надо специально постараться.

Стандарт как C, так и C++ на настоящее время существует (включая STL), всё что сверх него - использовать категорически не рекомендуется, если только это не является частью дополнительной библиотеки, которую вы осознанно используете.

LK4D4

  • Гость
Re: Хочу научиться программировать в Linux :)
« Ответ #68 : 28 Июля 2008, 19:40:21 »
Такой вопрос:
"Есть приложение, написанное на C++ под Linux, производительность которого необходимо серьезно улучшить. Расскажите, как можно найти его «узкие места» и какие инструменты вы станете для этого использовать."
Отвечать на него не надо, а лучше посоветовать, что почитать по этой теме) Приветствуются как ссылки, так и названия бумажных книг.

Оффлайн naviero

  • Активист
  • *
  • Сообщений: 685
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #69 : 28 Июля 2008, 23:54:16 »
На эту тему существуют целые увесистые тома. Много разных способов есть. Если сильно надо, могу и книжку разыскать. Но трудная это работа, требует уйму времени, знания ассемблера и архитектурных заморочек компилятора и проца.
Prefiero morir a pie, que vivir siempre arrodillado.
Ernesto Che Guevara

LK4D4

  • Гость
Re: Хочу научиться программировать в Linux :)
« Ответ #70 : 29 Июля 2008, 00:04:58 »
На эту тему существуют целые увесистые тома. Много разных способов есть. Если сильно надо, могу и книжку разыскать. Но трудная это работа, требует уйму времени, знания ассемблера и архитектурных заморочек компилятора и проца.
Книжку было бы просто замечательно. Ассемблер и архитектура меня не пугают) Меня все эти дела чертовски радуют.

Оффлайн Otetz

  • Активист
  • *
  • Сообщений: 455
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #71 : 29 Июля 2008, 02:41:09 »
А вот если имеется консольная программка и очень хочется сделать под неё GUI- чем тогда пользоваться? По идее, не должно быть слишком сложно?  :-[
Программа написана на С, исходники доступны. А нужны будут эти исходники, или нет?

Имеется ли нечто, способное создать графический интерфейс с событиями (нажал эту кнопу- вводится такая-то команда... нажал другую- другая...) Или тоже надо бешено кодить на С?
« Последнее редактирование: 29 Июля 2008, 02:44:09 от Otetz »
Anything, that MAY go wrong, WILL go wrong...

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #72 : 29 Июля 2008, 05:33:17 »
Такой вопрос:
"Есть приложение, написанное на C++ под Linux, производительность которого необходимо серьезно улучшить. Расскажите, как можно найти его «узкие места» и какие инструменты вы станете для этого использовать."
Отвечать на него не надо, а лучше посоветовать, что почитать по этой теме) Приветствуются как ссылки, так и названия бумажных книг.
man gprof
Не спеши браться за ассемблер. Вполне может статься что в критической функции, какой-то мудрый человек применил пузырьковую сортировку ;) достаточно будет выкинуть тормозной кусок и вписать туда qsort
Так что сначала разобраться надо.

Оффлайн igel

  • Новичок
  • *
  • Сообщений: 41
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #73 : 29 Июля 2008, 10:48:30 »
А вот если имеется консольная программка и очень хочется сделать под неё GUI- чем тогда пользоваться?
Tcl/Tk - самый простой путь, IMHO

Оффлайн Alex2000

  • Активист
  • *
  • Сообщений: 317
    • Просмотр профиля
Re: Хочу научиться программировать в Linux :)
« Ответ #74 : 29 Июля 2008, 11:38:32 »
Не вводите людей в заблуждение=)
Поменьше читайте Википедию, там кто угодно может писать что угодно. С++ вообще не включает в себя C. Только синтаксис похож, философия совершенно иная.

 

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