Модераторы: bartram, Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> На чём лучше писать минималистские программы? 
:(
    Опции темы
aLEXperimentator
Дата 18.2.2013, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 18.2.2013

Репутация: нет
Всего: нет



Здравствуйте, дамы и господа, уважаемые форумчане!

Я - немножечко программист, наверняка не очень хороший, но думаю что и не самый плохой тоже  smile  Учился программированию в старые добрые времена, когда компьютеры были однозадачные и японские, мониторы были монохромные и зелёные, а ОС была чёрная и с командной строкой  smile  Работал с Бейсиком, с Паскалем, даж с Фортраном, немного с Си, потом удалось перейти (а куда деваться? пришлось!) на визуальные среды разработки под Windows. Писал небольшие программки (не сказал бы, что это нечто выдающееся, но по работе реально было нужно) на VB6, на Delphi (тоже предпочитал версию 6) , на Borland C++ Builder... С Microsoft C++ отношения не заладились, чесгря. Питоны и Jav-ы оказались не по мне, а я не по ним - ну да ладно  smile  В данный момент упор чаще идёт на JavaScript, серверный JavaScript, C# из пакета Visual Studio и на php (веб-программирование) .

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

Простите что отнял у вас время на подобное введение, но вот недавно появилась одна такая задача. Возможно понадобится написать что-то похожее на клиент-серверное приложение; один сервер и несколько компьютеров-клиентов. Причём каковы они - я заранее не знаю.

Не, ну на своём компе я разумеется могу установить всё что угодно. Понадобится - можно поставить Windows 7, понадобится - Висту или Windows XP. и framework, и IIS, и Apache, и PHP, и MySQL... А насчёт клиента? Там я не особо могу хозяйничать... Ситуация усугубляется тем, что некоторые мои старые дельфийские программы, написанный под Windows XP, не запускаются сейчас на компе под Windows 7 x64. Или к примеру программа с компонентом сокетом, прекрасно запускавшаяся под Windows XP, требует зарегистрировать компонент в Windows 7 - оказывается он там по умолчанию не зарегистрирован, и только потом работает...

Я не знаю, на какой ОС запустят клиентскую часть. Не, ну то что это будет Windows - понятно. То что NT-семейство - тоже понятно (вряд ли кто сейчас будет сидеть на Win95 или Win98) . А вот XP, Vista или Windows 7 - заранее не знаю. Не знаю - установлен ли там пакет MЫ Visual C++ 2005 SP Redistributable (а без него не пойдут проги, написанный их-под Visual Studio) . Не знаю, есть ли на нём рантаймовый файл для Borland C++... Не знаю какова будет разрядность операционной системы, и уж подавно не знаю - будет ли эта версия базовой или расширенной, и будет ли в ней IIS и/или framework для выполнения CLR-кода...

Очень не хотелось бы к одному исполняемому файлу тащить целую кучу кода. Чтобы пакет потребовал себя инсталлировать - ведь пользователь может сидеть и под гостевой записью без права на инсталляции... Не хотелось бы, чтобы для установки одной программы пользователю пришлось бы качать десяток пакетов с интернета... Хотелось бы вот такой схемы: "на тебе экзешку - скопируй на свой комп, прямо на рабочий стол если хочешь, и работай". Не заставлять человека ставить ни Runtime Java, ни обязательно ставить и/или включать адоб флеш...

Вот и возник вопрос - на чём бы вы, уважаемые дамы и господа, уважаемые форумчане - посоветовали бы писать? На чём должен быть написан exe-файл, чтобы скорее всего на любой более-менее современной ОС семейства Windows любой "уровневости" и разрядности, при всех тех пакетах обычно стоящих по умолчанию - чтобы exe-файл скорее всего "нашёл" бы всё нужное для себя и смог бы запуститься? На чём следует писать самые, так сказать, "минималистские экзешники"? (ну желательно всё-таки с дизайном форм, а не мс-доса)  smile  

ПС: Сам склоняюсь к старому доброму VB6...

Это сообщение отредактировал(а) aLEXperimentator - 18.2.2013, 16:36
PM MAIL   Вверх
kemiisto
Дата 18.2.2013, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 3
Всего: 160



Цитата(aLEXperimentator @  18.2.2013,  15:35 Найти цитируемый пост)
Не знаю - установлен ли там пакет

Цитата(aLEXperimentator @  18.2.2013,  15:35 Найти цитируемый пост)
Не знаю, есть ли на нём рантаймовый файл

Static linking, нет, не слышал?

А так можно писать на чём угодно, где не нужна отдельная среда исполнения а-ля .NET CLR или JVM. Линкуйте только статически и всего делов.

Добавлено @ 17:00
Цитата(aLEXperimentator @  18.2.2013,  15:35 Найти цитируемый пост)
ПС: Сам склоняюсь к старому доброму VB6...

Нет, не стоит. smile Впрочем, о мертвых, либо хорошо, либо никак, так что я промолчу. 

Это сообщение отредактировал(а) kemiisto - 18.2.2013, 17:01


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Akina
Дата 18.2.2013, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 42
Всего: 454



Цитата(aLEXperimentator @  18.2.2013,  17:35 Найти цитируемый пост)
один сервер и несколько компьютеров-клиентов

Цитата(aLEXperimentator @  18.2.2013,  17:35 Найти цитируемый пост)
на своём компе я разумеется могу установить всё что угодно. Понадобится - можно поставить Windows 7, понадобится - Висту или Windows XP. и framework, и IIS, и Apache, и PHP, и MySQL... А насчёт клиента? Там я не особо могу хозяйничать... 

Стоп. Сервер - у тебя, а у клиента - клиентская часть? или весь комплекс - включая сервер - разворачивается у клиента?

В первом случае клиентская часть - это, например, любой достаточно свежий браузер. И пофиг на то, какая ось на клиенте. В крайнем случае просто потребуешь, чтобы JScript работал. Понятно, что сервер при этом должен быть не сопливый...
Во втором, впрочем, браузер тоже не худшее решение для клиентской части - а капризы по конфигу серверной смело посылаются в даль туманную.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
aLEXperimentator
Дата 18.2.2013, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 18.2.2013

Репутация: нет
Всего: нет



Снова здравствуйте smile Спасибо за отзывы и помощь.

Цитата(kemiisto @  18.2.2013,  16:59 Найти цитируемый пост)
Static linking, нет, не слышал?
Может и слышал, но честно говоря уже не помню. Раньше, года два-три назад я чаще использовал Дельфи, и пытался делать что-то на C++ Builder-е. И заметил прикольную вещь - то, что шло на моём компе - почему-то не шло на других. Позже выяснилось, что Билдер и Дельфи 7-ой версии пытались строить приложения с "пакетами времени исполнения", и это безобразие творилось независимо от того, какие галочки я выставлял в компиляторе smile Любопытно, что Дельфи 6 так не делала - она включала всю необходимую для работы инфу в один экзешник. Поэтому я и остался на 6 версии Дельфи, не стал переходить на 7-ую. По-крайней мере я всегда мог похвастать перед друзьями, какой я умный smile - файлы из-под Delphi 6 компилятора выполнялись у них тоже. С Дельфи 7 и Билдером постоянно получалися обломы smile

Сейчас Дельфи я не ставлю, и поэтому проверить галочки и опции компилятора пока что не могу. Но историю эту помню хорошо...

Цитата(kemiisto @  18.2.2013,  16:59 Найти цитируемый пост)
Цитата(aLEXperimentator @  18.2.2013 @   15:35)

ПС: Сам склоняюсь к старому доброму VB6...

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

Те на VB6, в которых нужен файл comct232.ocx (то есть в них есть компонент-диалог открытия файла) - не открываются. Вылетает ошибка. В которых этого компонента нет - открываются совершенно свободно. Дельфийские программы ведут себя по-разному - некоторые пишут, что версия этого файла несовместима с используемой версией Windows, некоторые стартуют нормально... Так же ведут себя и файлы, созданные Паскаль и Бейсик-компиляторами под MS-DOS. Экзешники, получившиеся из cpp - восновном стартуют нормально; но это не показатель - дело в том, что в данный момент на компе стоит MS Visual Studio, и понятно, что все C++-библиотеки Студия приташила с собой. Не будь их - тоже наверняка бы не работала половина программ...

Раньше программировал на Windows XP x32, В данный момент на новом ноуте стоит Windows 7 x64,  с него и проверяю. И вижу, что в некоторых случаях совместимость есть; в некоторых нет. Чаще совместимость обнаруживается в скомпилированных Вижуал-Бейсиковских файлах, 6 версии.

Отсюда делаю вполне логичный вывод - проги, написанные на VB6 - будут запускаться на компах пользователей с мЕньшими проблемами, нежели другие проги smile

------------------------

Цитата(Akina @  18.2.2013,  18:07 Найти цитируемый пост)
Стоп. Сервер - у тебя, а у клиента - клиентская часть?
Да, что-то в этом роде. Серверный компьютер будет скорее всего у меня; множество клиентских частей будут у клиентов.

Причём клиентские части должны быть как можно проще, чтобы не заморачивать людям головы с коннектом, прописыванием маршрутов или ещё чего-нибудь в этом роде... Не нужно морочить людям голову вспомогательными вопросами. Хотелось бы реализовать по принципу "кликнул и работай"...

Цитата(Akina @  18.2.2013,  18:07 Найти цитируемый пост)
В первом случае клиентская часть - это, например, любой достаточно свежий браузер. И пофиг на то, какая ось на клиенте. В крайнем случае просто потребуешь, чтобы JScript работал. Понятно, что сервер при этом должен быть не сопливый...
Согласен, но тут есть одно "но"...

Компьютеры могут находиться неизвестно где. Они могут принадлежать разным провайдерам, поэтому нельзя заранее считать, что можно попросить провайдеров объединить их в одну сеть. Это просто компьютеры, принадлежащие разным людям, которые должны работать с неким общим документом, размещённом на компе, который условно назовём сервером. Это для них он сервер, а для всего остального мира - он точно такой же комп в интернете. И связь между ними всеми скорее всего будет через сокеты... И я до конца не уверен, что браузер, даже с работающим Java-скриптом, может соединиться с другим компом, отправлять запросы именно на определённый порт и с определённой частотой...

А даже если сможет - при работе с файловой системой на локальном компьютере, к примеру, из JavaScript-а возникнут трудности... Разумеется можно при обращении к файлу подтверждать, что я разрешаю небезопасные компоненты ActiveX, но если у юзера по умолчанию вместо IE, к примеру стоит Opera или Safari - то не сработает и это... Я думал над браузерной реализацией, честно говоря, но мне кажется что это не очень хорошая мысль...
PM MAIL   Вверх
Akina
Дата 18.2.2013, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 42
Всего: 454



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

Цитата(aLEXperimentator @  18.2.2013,  22:16 Найти цитируемый пост)

Компьютеры могут находиться неизвестно где. Они могут принадлежать разным провайдерам, поэтому нельзя заранее считать, что можно попросить провайдеров объединить их в одну сеть.

Ты с какой луны упал? или ты для того, чтобы авторизоваться тут на форуме и писать посты под своим ником, просил провайдера объединить тебя с винградом в одну сеть? 
Цитата(aLEXperimentator @  18.2.2013,  22:16 Найти цитируемый пост)
связь между ними всеми скорее всего будет через сокеты...

Не, тебе решительно нехрен делать... HTTPS на основе личных сертификатов, VPN и прочую ерунду народ явно для чего-то ещё изобретал...
Цитата(aLEXperimentator @  18.2.2013,  22:16 Найти цитируемый пост)
 я до конца не уверен, что браузер, даже с работающим Java-скриптом, может соединиться с другим компом, отправлять запросы именно на определённый порт и с определённой частотой...

Значит, тебе пора наконец бросить написание кода и начать хоть что-то изучать.
Цитата(aLEXperimentator @  18.2.2013,  22:16 Найти цитируемый пост)
А даже если сможет - при работе с файловой системой на локальном компьютере, к примеру, из JavaScript-а возникнут трудности... Разумеется можно при обращении к файлу подтверждать, что я разрешаю небезопасные компоненты ActiveX, но если у юзера по умолчанию вместо IE, к примеру стоит Opera или Safari - то не сработает и это... Я думал над браузерной реализацией, честно говоря, но мне кажется что это не очень хорошая мысль... 

Ага... а многочисленные клиент-банки (крупные банки, крупные клиенты, многомиллионные операции) опять-таки дурью маются...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
aLEXperimentator
Дата 18.2.2013, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 18.2.2013

Репутация: нет
Всего: нет



Akina, я прекрасно понимаю, что если вызываю подобную реакцию - значит либо чего-то не сумел объяснить до конца, либо на самом деле чего-то недопонимаю. По-видимому это моя вина. Попробую ещё раз:

Дело в том, что сервер Винграда - он официальный сервер. Он зареген в нете под каким-то определённым статическим ай-пи адресом, и всякой раз, когда я набираю forum.vingrad.ru - происходит переадресация именно по этому ай-пи, который вбит, скажем так, в некую "таблицу имён и адресов" (назовём это так).

В моём же случае серверный компьютер - это будет обычный компьютер. Стоящий у человека дома. У него не будет статического интернет-адреса, каждый раз выходя в инет человек будет получать новый адрес. Сегодня он, допустим, 100.101.102.103; а завтра он станет 101.102.103.104, образно говоря. У этого компа нет доменного имени.

Адрес своей собственный в сети комп узнать конечно же может. И в принципе этот адрес можно сообщить остальным компьютерам - да хоть сделать рассылку электронной почты, сделать одну-единственную страницу где-нить на яндекс-народ-ру и динамически выкладывать его туда, да хоть рассылку смс-ками сделать и/или просто позвонить и сказать... После чего доступ к нему должен быть открыт только этим людям-клиентам - остальные попытки кого бы то ни было ломануться на него должны отбиваться. Я никогда не работал с такими ситуациями, и поэтому попросту не знаю - как себя поведёт себя комп с "официальным сервером" на стандартном 80-м порту. Поэтому я и порт хотел тоже сделать нестандартным - дабы меньше отсеивать пришлось. (хотя понимаю, что по-видимому можно)

То есть клиенты заходят именно по ай-пи (не по домену - его попросту нет) ; клиент этот человек или не клиент - определяется по некоему переданному ключу в пакете. В запросе. Если же ключ не передан - запрос просто отбивается безо всяких страниц авторизации или чего-либо ещё. Каждому клиенту раздаётся экзешник со своим "ключом".  Именно так не-клиент и отличается от клиента и отсеивается сразу же, безо всякой авторизации... То есть для не-клиентов страницы попросту нет.

Насчёт запросов от браузера - кажется я понимаю суть возражения; имелся в виду Ajax, конечно же? Согласен, наверно можно, но мне почему-то показалось, что экзешка справится лучше JavaScript-а, поскольку всё-таки более универсальна... Впрочем разумеется могу ошибаться. Повторюсь - просто не работал с такими ситуациями... С сервером и авторизацией - работал, с такими вещами - не работал.

По-любому спасибо за наводку на умные мысли на тему Ajax-а (это совершенно честно, безо всякой иронии)
Правда надо будет сначала проверить, как это будет работать...
PM MAIL   Вверх
Akina
Дата 19.2.2013, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 42
Всего: 454



Цитата(aLEXperimentator @  19.2.2013,  00:39 Найти цитируемый пост)
В моём же случае серверный компьютер - это будет обычный компьютер. Стоящий у человека дома. У него не будет статического интернет-адреса, каждый раз выходя в инет человек будет получать новый адрес. Сегодня он, допустим, 100.101.102.103; а завтра он станет 101.102.103.104, образно говоря. У этого компа нет доменного имени.

Ну и что? Узел в Инете не обязан иметь доменное имя, но если без него жизнь не мила - к вашим услугам DynDNS, No-IP и так далее, разной степени бесплатности... Хотя, как я понимаю, речь идёт о продаже онлайн-сервиса - если так, то чего крохоборничаете-то?

Цитата(aLEXperimentator @  19.2.2013,  00:39 Найти цитируемый пост)
клиенты заходят именно по ай-пи (не по домену - его попросту нет) ; клиент этот человек или не клиент - определяется по некоему переданному ключу в пакете. В запросе. Если же ключ не передан - запрос просто отбивается безо всяких страниц авторизации или чего-либо ещё.

Отбивается - это deny или drop? если первое - я тебя вообще не понимаю. С другой стороны - ты никогда не пробовал, например, соединиться с VPN-сервером, который понимает исключительно шифрование на основе сертификатов, без этого сертификата? 

Цитата(aLEXperimentator @  19.2.2013,  00:39 Найти цитируемый пост)
 для не-клиентов страницы попросту нет.

Файрвол или VPN-сервер можно настроить так, что для не-клиентов не то страницы - и узла-то этого в сети не будет... и для этого вовсе не требуется никаких секретных ключей в теле пакета.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
aLEXperimentator
Дата 24.2.2013, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 18.2.2013

Репутация: нет
Всего: нет



Здравствуйте всем ещё раз. Я очень сорри за то что долго не отвечал - немного измотка в работе, а быть собеседником в полусонном и полуварёном виде мне не очень хотелось smile ... Сейчас более-менее выспался, и вот я снова с вами smile

Цитата(Akina @  19.2.2013,  12:35 Найти цитируемый пост)
речь идёт о продаже онлайн-сервиса - если так, то чего крохоборничаете-то?
Не совсем о продаже онлайн-сервиса...

Речь идёт о бета-тестировании в интернете небольшой разработки. Документ должен быть доступен некоторой категории бета-тестеров, среди которых некоторые и не компьютерщики, и абсолютно не хочется грузить людей авторизациями. Если всё пройдёт гладко - можно будет уже подумывать о хостинге и домене; если выяснится что у идеи нет продолжения - не нужен ни хостинг, ни домен. И посторонние (не бета-тестеры) посетители ресурсу до его окончательной обкатки пока не нужны. Поэтому и была идея сделать всё в "фоновом режиме", никого не напрягая ни регистрациями на ресурсе, ни регистрациями самого ресурса...

Цитата(Akina @  19.2.2013,  12:35 Найти цитируемый пост)
Отбивается - это deny или drop?
Ну идея была в том, что "отбивается" - это вообще отсутствие какой-либо ответной реакции на запрос без ключа. То есть если в теле запроса есть ключ - есть ответ; нет ключа - "давай дасвидания!" ©

Цитата(Akina @  19.2.2013,  12:35 Найти цитируемый пост)
С другой стороны - ты никогда не пробовал, например, соединиться с VPN-сервером, который понимает исключительно шифрование на основе сертификатов, без этого сертификата?
Нет, никогда не пробовал.

Цитата(Akina @  19.2.2013,  12:35 Найти цитируемый пост)
Файрвол или VPN-сервер можно настроить так, что для не-клиентов не то страницы - и узла-то этого в сети не будет... и для этого вовсе не требуется никаких секретных ключей в теле пакета. 
Akina - тогда если можно - в общих словах - что бы посоветовали мне посмотреть в рамках данного вопроса?

-----------------------------------------

 И всё-таки в рамках Windows-минимализма:

По-видимому действительно: если на компьютере клиента не надо производить никаких действий с файловой системой - то имеет смысл делать браузерную реализацию с включённым java-script-ом. Плюс в том, что работать будет не только под Windows.

Если некоторые действия с файловой системок на компе пользователя делать всё же нужно - имеет смысл написать html-java-script-страницу со включениями ActiveX (для IE) и/или XPCOM (для семейства Firefor-Seamonkey от Мозиллы). Эти компоненты могут вести чтение/запись файлов. Плюсы в том, что на компе юзера может вообще не быть практически никаких вин-библиотек. Минусы в том, что если для IE ActiveX сам запросит разрешение на работу; то для Мозиллы придётся лезть и настраивать signed.applets.codebase_principal_support = true - иначе вообще никакой XPCOM работать не будет (это есть ещё одна головная боль для чайников). Юзеры Оперы или Сафари тоже пользоваться такой страницей-прогой не смогут, что не есть очень хорошо...

На следующем месте я бы всё-таки поставил пресловутый VB6, для работы которого нужен файл msbvm60.dll - откуда берутся все системные процедуры и сервисы, и насколько мне удалось понять - если не использовать всяких дополнительных диалогов и/или компонент - этим файлом дело и ограничивается...

Это может означать, что у скомпилированного в exe-файл проекта на VB6 больше шансов запуститься на бОльшем количестве компьютеров.

Далее - имеет смысл обратить внимание на Delphi-проекты, созданные под Delphi Kylix - если создать и откомпилировать проект Дельфи именно как проект Kylix, а потом приложить к экзешнику qtintf.dll - то эта прога тоже запускалась и под Windows 32, и под Windows 64.

Вот пожалуй пока что и всё. Вот такая вот ранжировка:
1. HTML + JavaScript
2. HTML + JavaScript + ActiveX + XPCOM от Мозиллы
Если работа с файлами не требуется или требуется очень ограниченно

3. Visual Basic 6 (без лишних компонент)
4. Delphi 6 откомпилированный из проекта Kylix - нужно будет приложить файл qtintf.dll
Если работа с файловой системой и прочими возможностями всё-таки реально будет нужна

И чтобы проверить свою мысль - я хочу обратиться к администрации форума с вопросом: можно ли здесь выкладывать файлы?

Дело в том, что у меня появилась мысль - набросать очень небольшую VB6-экзешку, и выложить её сюда; чтобы всякий кто захочет - мог бы её скачать и попытаться запустить на Windows-компе? На самых разных Win-компах - наверняка среди юзеров будут те, у которых будет WinXP, а у кого-то будет Win7 или Vista, у кого-то будет x32, у кого-то x64... И т.д. Так и я, да и не только я - все посетители этой темы сможем получить больше хорошей статистики - на чём следует писать "минималистичные" Windows-программы.

Можно ли выложить экзешник? Это разрешено правилами форума?

С уважением ко всем.
PM MAIL   Вверх
aLEXperimentator
Дата 25.2.2013, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 18.2.2013

Репутация: нет
Всего: нет



И ещё буквально несколько слов, уважаемые дамы и господа, дорогие форумчане:

Хотелось бы немного пофилософствовать о предустановленных компонентах Windows-ов. smile Немного напишу о своём собственном опыте. Речь идёт не о каком-либо конкретном проекте, а вообще о разных проектах на разных программистских языках, созданных разными компиляторами под разные версии ОС Windows...

Та же VB6-библиотека, насколько я могу вспомнить - не входила предустановленной в Windows XP SP1-SP2. По-крайней мере не входила в 2003-2004 годах; помню потому что некоторые проги (игры, а также некоторые мои собственные рабочие) написанные под VB6 - на "сыром" только что установленном компьютере не запускались (если я сейчас всё правильно вспоминаю)... Но достаточно было установить или Microsoft Office, или Corel Draw - те же файлы запускались без проблем. Скорее всего и Microsoft Office, и Corel Draw сами ставили какие-то VB-dll-файлы - тут достаточно вспомнить, что VBA - язык макросов в том же самом оффисе... Трудности были только со стартом фалов, содержащих диалоги открытия файлов - им требовался установленный comct232.ocx (если всё помню верно). Именно поэтому беру на себя смелость предполагать, что если на компе стоит какая-то винда с какой-то поддержкой Visual Basic for Application - то VB6-exe-файлы (созданные без лишних компонент) будут запущены без проблем. Не могу проверить это утверждение для всего NT-семейства Windows - потому как мне сейчас некуда установить для проверки Windows 2000, но скорее всего всё сказанное будет справедливо и для неё. Да и к тому же не так уж и много наверняка в мире настолько преданных фанатов этой весьма достойной и весьма старой ОС smile

Но что есть "лишние компоненты"? И что есть "нормальная установка"? Ну наверно если просто и на пальцах - нормальная установка это та, когда берётся установочный CD-диск от Microsoft-а (пусть даже опять-таки самый минимальный), ничего с него не вырезается, при установке все "палочки" и все "галочки" не трогаются - как стояли - так и стоЯт, и происходит установка со всеми рекомендованными от Microsoft компонентами. Больше - можно. Меньше - нельзя. Потом на комп ставится некий программный минимум, без которого не обойдётся даже домохозяйка. Ну к примеру скажем браузер Опера, или пакет Microfoft Office (допустим). Вот такой вот "имнимализм" имеет смысл называть "минимальный установкой". Минимальная установка - это то, что можно наковырять на подавляющем большинстве компов в мировом инете...

Встречались винды, из которых были вырезаны и Microsoft Paint (!) , и даже Internet Explorer (!!) - это были дескать особо быстрые "геймерские версии". Дело в том, что одно время у меня был очень слабый старый ноутбук, и я всё время пытался подобрать под него лёгкую ОС (потом понял что ничего из этого не выйдет и продал его на фиг, скорее всего он ушёл на запчасти)... Проверять такую "геймерскую версию" на реальную скорость просто не захотелось - после того как вообще половина даже её родных прог стала вылетать с ошибками "не найден такой-то компонент" - снёс её к чертям...

Понятно, что если юзер установит себе такую кастрированную Windows - ему уже не сможет помочь никакой программист и никакой язык программирования. Однако на практике всё-таки ставится нечто более нормальное; так что думается любой программист Visual Basic-а или Дельфи, который таскает компоненты на свои формы во время разработки, имеет право предполагать, что уж компонент Internet Explorer у будущего юзера его программы на компе будет установлен...

Вот такие вот мысли... И они будут относиться к любой небольшой программке, которую захочет написать и распространить в инете какой-либо автор. Либо требовать от пользователя "установить сначала вот это и вот это, и только потом я буду работать", рискуя напугать человека - простого юзера, ничего не смыслящего в установке; либо чтобы не грузить "чайника" вообще ничего от него не требовать, а просто запускать мастер установки и брать и разворачивать все необходимые пакеты в фоновом режиме (рискуя тем, что юзер задолбается постоянно нажимать разрешение на установку в Висте или Семёрке - ведь он хочет поставить одну-единственную небольшую прогу автора, а не половину интернета); либо постараться свести всю прогу к одному-двум используемым базовым библиотекам и ставить только их (это на мой взгляд достаточно трудная задача для программиста-непрофессионала и не гуру); либо писать несколько версий; либо смириться с тем, что у многих людей прога пойдёт, а у многих не пойдёт; либо опять-таки постараться угадать и использовать некий минималистичный подход... Вот этой чесгря немного размытой теме и хотелось посвятить эту веточку форума smile

Это сообщение отредактировал(а) aLEXperimentator - 25.2.2013, 16:58
PM MAIL   Вверх
dstorm81
Дата 26.2.2013, 15:05 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


бездельник
***


Профиль
Группа: Завсегдатай
Сообщений: 1178
Регистрация: 18.1.2006
Где: (16RU)

Репутация: 5
Всего: 39



мля-ж, аффтар отрежь себе пальцы 
Цитата(aLEXperimentator @  25.2.2013,  16:56 Найти цитируемый пост)
Хотелось бы немного пофилософствовать о предустановленных компонентах Windows-ов.

не нужно философствовать...
для установки программ под винды есть ИНСТАЛЛЯТОРЫ (и какие компоненты будут установлены зависит только от тебя).
все тема закрыта.


--------------------
на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#)

PM   Вверх
Akella
Дата 26.2.2013, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 73
Всего: 329



и не лень жеж тебе столько печатать?

Добавлено через 2 минуты и 3 секунды
Цитата(aLEXperimentator @  25.2.2013,  16:56 Найти цитируемый пост)
Понятно, что если юзер установит себе такую кастрированную Windows - ему уже не сможет помочь никакой программист и никакой язык программирования. 


Цитата(aLEXperimentator @  25.2.2013,  16:56 Найти цитируемый пост)
Встречались винды, из которых были вырезаны и Microsoft Paint (!) ,


Цитата(aLEXperimentator @  25.2.2013,  16:56 Найти цитируемый пост)
и даже Internet Explorer (!!) -



Ты тут при чем? Это проблемы юзверя.
Ты должен обеспечить работу программы на нормальной, лицензионной ОС.
Всё. Хватит философстовать.
Иначе перенесу твою тему в Песочницу или Флейм.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Windows"
December
bartram
Akella

Запрещается!

1. Обсуждать взлом и делиться кряками

2. Способствовать созданию и распространению вирусов

  • Для бессмертных бородатых вопросов типа Win vs Nix есть специальный форум Религиозные Войны
  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • ВСЕГДА УКАЗЫВАЙТЕ ВЕРСИЮ ОС

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, December, bartram, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Windows | Следующая тема »


 




[ Время генерации скрипта: 0.1041 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.