На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
Страницы: (15) « Первая ... 7 8 [9] 10 11 ...  14 15 все  ( Перейти к последнему сообщению )  
> Delphi 8 - Первые впечатления , Шаг вперёд - два шага назад?
    to andrey_pst

    http://www.mono-project.com

    Цитата
    What is Mono?™
    Mono is a comprehensive open source development platform based on the .NET framework that allows developers to build Linux and cross-platform applications with unprecedented productivity.

    Mono's .NET implementation is based on the ECMA standards for C# and the Common Language Infrastructure.

    Sponsored by Novell and led by Miguel de Icaza, the Mono project has an active and enthusiastic contributing community. Mono includes both developer tools and the infrastructure needed to run .NET client and server applications.

    Mono includes a compiler for the C# language, an ECMA-compatible runtime engine (the Common Language Runtime, or CLR),and class libraries. The libraries include Microsoft .NET compatibility libraries (including ADO.NET and ASP.NET), Mono's own and third party class libraries.Gtk#, a set of .NET bindings for the gtk+ toolkit and assorted GNOME libraries can be found in the later. This library allows you to build fully native Gnome application using Mono and includes support for user interfaces built with the Glade interface builder. Furthermore, Mono's runtime can be embedded into applications for simplified packaging and shipping. In addition, the Mono project offers an IDE, debugger, and documentation browser.

    If you have questions about the project, read the project launch statement or visit our list of Frequently Asked Questions.

    For details on the project's future direction, read the roadmap, and download Mono 1.0.
      Цитата
      Чтобы с исчерпывающей ответить на эти вопросы, не хватить места здесь. Надо научную статью писать. Почитай лучше литературу и другие источники (лучше побольше - для возможности сравнивать).
      Замечу только, что C# - это не урезанный C++. По синтаксису C# на 60% - C++, на 35% - Java, на 5% - Pascal.
      Но это синтаксис. Важна же структура языка. И с этой точки зрения C# - новый язык, строектированый с учетом всего опыта и свободный от негативного груза обратной совместимости.

      Много красивых слов и всё. Найдите хотя бы на 35% отличий Java от С++

      Цитата
      WinAPI проектировалась не очень структурированно и без учета того, что возможно, будет добавлено в нее после.

      Голословное утверждение. И, по-моему, не правильное. Если часто работать с WinAPI, то можно заметить, сколько там параметров "reserved", а также множество параметров-флагов, в которых пока-что можно определить только один флаг. Так что WinAPI - не просто набор функций, слепленных на голую руку.

      Цитата
      В итоге в результате развития слишком много ерунды в угоду обратной совместимости (как и в Delphi language, кстати).

      И что? Ну лежит там где-то функция OpenFile в библиотеке, и что, от этого тяжко что-ли.

      Цитата
      .NET проектировали с нуля в архитектурном плане. .NET предусматривает реализацию не только под Windows, а во многих системах.
      Поэтому мнения, что .NET - ООП-обертка для WinAPI - безосновательны.

      Ок. Смотрим класс System.Threading.Thread.
      Методы Suspend, Resume. Интересно, как они это будут реализовывать в системах, где нет приостановки потоков (если я отстал от жизни, и в Posix включили приостанов потоков, то сразу так и скажите).
      Так же непонятно, как будут синхронизироваться процессы через mutex'ы, и куда денется System.ServiceProcess нэймспэйс, и где же всё-таки создавать на unmanaged side дескриптор с флагом OVERLAPPED например в Linux? Там ещё ОЧЕНЬ много такого. Интересно бы на всё это посмотреть, но качать mono нет возможности.

      .NET изначально проектировался под Windows. Несмотря на все заверния, что это не так.

      P.S. Откройте .NET Framework SDK и посмотрите любой класс или метод. Внизу надпись: Requirements. Как эту библиотеку можно назвать независимой от WinAPI, когда отдельные методы классов зависят от версии Windows.
      Сообщение отредактировано: Sanek -
        Цитата
        Гость Andr, 10.08.04, 11:08
        Вообще MS планировала открыть полную спецификацию на .NET после окончательной доработки и передать все права широкой общественности.

        Ага. Конечно. Она это очень любит.

        .NET --- это хорошо. Это идея, не новая, но реализация которой необходима была уже давно. НО НЕ ОТ Microsoft! Для них это деньгогребущая машинка.
        Эту вещь должен был разрабатывать некий консорциум типа W3C.

        Цитата
        Гость Andr, 8.08.04, 07:37
        В .NET все данные - объекты (в качестве первоначального предка выступает System.Object). По крупному все типы объектов делятся на 3 группы:
        1. Фундаментальные типы данных
        2. Классы. Тут все понятно - ООП в классическом виде.
        3. структуры

        У меня вопрос:
        Есть ли в ней метаклассы (типа TClass) и массивы?
          to BackSlash
          Цитата
          Есть ли в ней метаклассы (типа TClass) и массивы?

          Все массивы неявно порождаются от типа System.Array, который является наследником System.Object:
          Цитата
          Array Class
          Provides methods for creating, manipulating, searching, and sorting arrays, thereby serving as the base class for all arrays in the common language runtime.

          For a list of all members of this type, see Array Members.

          System.Object
          System.Array

          [C#]
          [Serializable]
          public abstract class Array : ICloneable, IList, ICollection,
          IEnumerable

          © .NET Framework SDK Documentation version 1.1.0.

          Кстати, перечисляемые типы там тоже есть (в отличие от Java).
          Еще интересная особенность: в .NET есть класс для реализации битовых флагов. Кроме битовых флагов это еще и прекрасная альтернатива множествам.
          На счет метаклассов не знаю.

          to Sanek
          Цитата
          P.S. Откройте .NET Framework SDK и посмотрите любой класс или метод. Внизу надпись: Requirements. Как эту библиотеку можно назвать независимой от WinAPI, когда отдельные методы классов зависят от версии Windows.

          Это справка по Microsoft .NET Framework 1.1 - конкрентная версия под Windows.
          Это не доказательство, что .NET проектировалась тока под Windows.
            Меня эта тема сильно задела, потому что в последнее время люди часто стали пользоваться псевдоуниверсальными продуктами, облегчающими написание программ. Например, у нас на фирме пытались сделать программу с многооконным интерфейсом и панелями инструментов с помощью Macromedia Director. И ничего, кроме головной боли это не принесло. На Дельфи это проще и быстрее.

            С .Net мне кажется тоже самое. Оно предназначено для довольно узких и специфических задач (вроде бухгалтерских приложений). Это тоже самое, что писать HTML с помощью визуального редактора. Может на распечатке оно выглядит точно также, но для интернет-сайтов такого никто (насколько мне известно) не делает.

            Мои выводы таковы:

            1) Warcraft с помощью .Net не напишеш
            2) для Микрософт это в первую очередь бешеные бабки, поскольку заменить стандартное API было бы гораздо сложнее и оно придумало надстройку к нему
            3) .Net многим пригодится, но это не значит что API умрет и нужно быстро переучиваться. Думаю, что переучиваться пока вообще не нужно.
            4) если Микрософт рискнет выпустить систему, где с API работать будет невозможно или трудно (полностью от него к счастью избавиться невозможно), то это приведет к гибели ОС Windows (она перестанет быть массовой, а главное домашней), и по-этому оно этого не сделает.
              ... ну и ПК соответствующий нужен?
              я думаю, что П3 700Мгц х 256МБ ОЗУ уже не пойдет
                The Next Delphi Release (9.0) - "DiamondBack" Codename
                http://bdn.borland.com/article/0,1410,32499,00.html
                  А еще насчет Delphi8 for .Net framework:
                  D6-D7 (не знаю насчет D5) было такое ЗАМЕЧАТЕЛЬНЕЙШЕЕ свойство как ссылка, на объявление, т. е. подводишь курсор мыши к идентификатору, например TControl, нажимаешь клавишу Ctrl жмешь мышой и,... о чудо волшебства, перед нами есть объявление этого самого TControl`а, а при желании можно посмотреть еще и его реализацию...
                  Ну так вот такое волшебство в D8 вроде бы сохранилось, но только в пределах собственных модулей и программ. Как реализован, тот же самый LinkLabel например - ???? (хотя вроде бы понятно, что от Label`а и т. д. и т. п.) Но все же у Microsoft снова политика закрытости кода - усе у DLL и фиг чего от ниг дабъешьси, кроме названия ф-ции, даже параметры помоему не вытащишь...
                    to SPrograMMer
                    Цитата
                    D6-D7 (не знаю насчет D5) было такое ЗАМЕЧАТЕЛЬНЕЙШЕЕ свойство как ссылка, на объявление, т. е. подводишь курсор мыши к идентификатору, например TControl, нажимаешь клавишу Ctrl жмешь мышой и,... о чудо волшебства, перед нами есть объявление этого самого TControl`а, а при желании можно посмотреть еще и его реализацию...

                    Эта прекрасная возможность появилась еще в D4. (Сам с начал программировать с D3).

                    Действительно, это очень круто. Меня эта возможность помогла в двух вещах:
                    а) в понимании работы VCl/RTL (соответственно грамотно использовал эти библиотеки);
                    б) написанию своего кода в хорошем тоне (в стилистике Borland).

                    Цитата
                    Ну так вот такое волшебство в D8 вроде бы сохранилось, но только в пределах собственных модулей и программ. Как реализован, тот же самый LinkLabel например - ???? (хотя вроде бы понятно, что от Label`а и т. д. и т. п.) Но все же у Microsoft снова политика закрытости кода - усе у DLL и фиг чего от ниг дабъешьси, кроме названия ф-ции, даже параметры помоему не вытащишь...

                    Ну, никто же не возмущается, что Microsoft долгое время не открывала исходники Win32 API... (сейчас открыта только часть, и то очень условно).
                    Так нечего возмущаться, что и исх. код .NET закрыт. Достаточно того, что есть открытая спецификация на .NET. А на C# вообще есть международный стандарт - ссылка на стандарт здесь: C# - стандарт

                    И еще. Повторюсь, но Ваше замечание, to SPrograMMer лишний раз подтверждает мысль, что изучать D8 саму по себе не следует. Если при программировании на D8 использовать только библитотеку классов .NET, и не использовать VCL.NET (для поддержки старых проектов), то все рано придется изучать .NET и то, как Object Pascal 8 приведен к требованиям общеязыковой спецификации .NET. Уж гораздо проще изучить сразу .NET/C#.

                    Не хотелось бы никого обидеть, но на мой взгляд, те, кто критикует .NET, просто неспособны (или не хотят) изучить внимательно новую платформу (почитать хорошую литературу - Рихнера, например, или в справку заглянуть) и понять действительно ее прогрессивность и актуальность не только для сегоднящнего дня, но и для всего программировнаия в целом.
                      Интересно как реализовывать защиту от копирования под .NET. Нужно же будет получить от компушки, на пример, заводской номер HDD и BIOS. Что будет с упаковщиками EXE? Непонятно... :whistle:
                        2 To be or .NET to be?
                        Цитата
                        Интересно как реализовывать защиту от копирования под .NET. Нужно же будет получить от компушки, на пример, заводской номер HDD и BIOS. Что будет с упаковщиками EXE?
                        Если эти вопросы действительно интересны, то займись ими и изучи. А не задавай вопросы типа:
                        Цитата
                        Непонятно...
                        Конечно, когда появляется новый продукт, прежде чем делать выводы, надо его изучить. А если нет желания/возможности/способности его изучить, то и нечего хаять...
                          Цитата Гость Andr @ 19.08.04, 00:53
                          И еще. Повторюсь, но Ваше замечание, to SPrograMMer лишний раз подтверждает мысль, что изучать D8 саму по себе не следует. Если при программировании на D8 использовать только библитотеку классов .NET, и не использовать VCL.NET (для поддержки старых проектов), то все рано придется изучать .NET и то, как Object Pascal 8 приведен к требованиям общеязыковой спецификации .NET. Уж гораздо проще изучить сразу .NET/C#.

                          Нет уж, я как-то пробовал C изучать, очень это было давно, и неправда, но тем не менее я еще не знал что Delphi существует, ну так вот еще простейшее C (не С++, нет) уже настолько ГЛУМНОЕ оказалось, что недавно пробовал что-то программить уже на C++ с использованем ООП, см. темы в разделе C, около месца назад, ну так вот ТО ЧТО КОНСТРУКТОРЫ И ДЕСТРУКТОРЫ в С++ (наверное и в С#) вызываются авторматом (черная магия прям!!!), и еще много чего, чего в паскале было очень просто и более понятно в С++ настолько заглумлено!!!, хотя не утверждаю, что Паскаль лучше, если в этом всем разобраться, то может быть С (С#) и лучше, но тем не менее в С (C#) все, или почти все и не только в синтаксисе... ну очень заглумлено.
                          В общем моё мнение таково: несмотря на появление новой технологии .Net и соответственно "нового" языка для этой технологии, несмотря на это (и я уже в этом убедился) можно усе перевести с одного языка на другой (лишь бы ДОКУМНТАЦИЯ была по РУССКИ!!! (для меня это почти, что основное требование... :'( , к сожелению...)). Многоие примеры из книги, написаной для VB`шников и C#`шников по .Net, удалось мне перевести на Delphi №8...
                          Сообщение отредактировано: SPrograMMer -
                            Цитата
                            >> Конечно, когда появляется новый продукт, прежде чем делать выводы, надо его изучить. А если нет желания/возможности/способности его изучить, то и нечего хаять...


                            Слушай, Andr, я и не думал хаять свой любимый Delphi :no: . Но прежде чем отдавать за него кучу денег, хотелось бы разобраться, что там случилось с D8. Посмотри какие здесь о нем нелестные высказывания! Такого не было даже с D4.
                              Цитата To be or .NET to be? @ 24.08.04, 04:25
                              Слушай, Andr, я и не думал хаять свой любимый Delphi. <...> Посмотри какие здесь о нем нелестные высказывания! Такого не было даже с D4.

                              ТОЧНО!!!
                              и я свой любимый D не брошу, несмотря на
                              Цитата
                              Изучайте C#!!
                                2 SPrograMMer
                                Все равно, что я бы сказал, учась в 5-м классе
                                "Ну и что, что все уже программят на MS VC++, все равно я свой Basic4.5 не брошу"
                                Нужно программить на том, чего требует время. Если ВСЕ будет построено на .Нет, то в любом случае придется программить под него. Если дельфя все-таки отдастся со временем микрософту, то придется программить на C#. Тут уж никуда не деться... если конечно не хочешь оставить эту профессию ;)
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (15) « Первая ... 7 8 [9] 10 11 ...  14 15 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0843 ]   [ 15 queries used ]   [ Generated: 16.09.25, 01:09 GMT ]