The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Компания Apple представила язык программирования Swift 5

26.03.2019 12:08

После года разработки компания Apple опубликовала релиз языка программирования Swift 5. Официальные сборки подготовлены для Linux (Ubuntu 14.04, 16.04, 18.04) и macOS (Xcode). Исходные тексты распространяются под лицензией Apache 2.0.

В новой версии стабилизирован ABI для платформ macOS, iOS, tvOS и watchOS. Обеспечена возможность поставки новых версий библиотек без перекомпиляции приложений. В стандартной библиотеке внутреннее представление строк переведено на кодировку UTF-8. Улучшена поддержка raw-текста (со спецсимволами и переводами строк) в строковых литералах. Добавлены новый тип для обработчиков ошибок Result и векторный тип SIMD. Расширены возможности по интерполяции строк с типом String (выделение текста из произвольных данных). Увеличена производительность типов Dictionary и Set.

В runtime добавлены средства для организации эксклюзивного доступа к памяти (для проверки, что переменная не доступна через другие имена в момент изменения в функции), которые могут включаться как в отладочном режиме, так и для релизов. Реализована возможность создания динамически вызываемых типов (предложен атрибут "@dynamicCallable"), нацеленных на улучшение переносимости с языками с динамической типизацией, такими как Python, JavaScript и Ruby. Добавлена поддержка условного оператора "меньше чем" в выражениях управления ходом компиляции (например, "#if swift(<4.2)").

В пакетном менеджере представлена поддержка зеркалирования зависимостей, привязки параметров сборки к целевой платформе, генерации coverage-данных и определения собственных требований к поддерживаемым целевым платформам. В команду "swift run" добавлена возможность импорта библиотек в REPL без сборки в формате исполняемых файлов.

Напомним, что язык Swift наследует лучшие элементы языков C и Objective-C, и предоставляет объектную модель, совместимую с Objective-C (Swift-код может смешиваться с кодом на С и Objective-C), но отличается использованием средств автоматического распределения памяти и контроля переполнения переменных и массивов, что значительно увеличивает надёжность и безопасность кода. Swift также предлагает множество современных методов программирования, таких как замыкания, обобщенное программирование, лямбда-выражения, кортежи и словарные типы, быстрые операции над коллекциями, элементы функционального программирования. Версия для Linux не привязана к Objective-C Runtime, что позволяет использовать язык в окружениях, в которых отсутствует поддержка Objective-C.

Pеализация Swift построена с задействованием технологий свободного проекта LLVM. Для обеспечения высокой производительности Swift-программы компилируются в машинный код, выполняемый в тестах Apple на 30% быстрее кода на Objective-C. Вместо сборщика мусора в Swift используются средства подсчёта ссылок на объекты. В поставку входит пакетный менеджер Swift Package Manager, предоставляющий средства для распространения модулей и пакетов с библиотеками и приложениями на языке Swift, управления зависимостями, автоматизированной загрузки, сборки и связывания компонентов.


  1. Главная ссылка к новости (https://swift.org/blog/swift-5...)
  2. OpenNews: Компания Apple выпустила язык программирования Swift 4.1
  3. OpenNews: Компания Apple выпустила язык программирования Swift 4.0
  4. OpenNews: Создатель LLVM и Swift уходит из компании Apple
  5. OpenNews: Компания Apple представила язык программирования Swift 3.0
  6. OpenNews: Компания Apple объявила о скором переводе языка Swift в разряд открытых проектов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50393-swift
Ключевые слова: swift, apple
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (74) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.4, Аноним (4), 12:29, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Версия 5, а UTF-8 только сейчас прикрутили. Зачем так жить?
     
     
  • 2.5, FullZero (??), 12:30, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ждем код со смайликами в качестве названий объектов и переменных
     
     
  • 3.7, Аноним (7), 12:43, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    В Ruby вон под новый год еще завезли )
     
  • 3.26, keir (ok), 14:15, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Еще в 2014 году официальный мануал описывал использование смайликов как имена переменных )
     
  • 2.12, Аноним (12), 13:06, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А по ссылке сходить слабо? Изначально было UTF-16.
     
     
  • 3.15, Аноним (4), 13:23, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +4 +/
    У вас с чтением всё хорошо? При чём тут эта днище-16 кодировка?
     
     
  • 4.19, Аноним (19), 13:56, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –4 +/
    чего вы д..читесь UTF-8 и UTF-16 это один и тот же набор символов, просто UTF-16 больше заточен под азиатов в плане уменьшения размера при кодировании символов
     
     
  • 5.29, Аноним (19), 14:40, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ну и чего мунусятники возбудились ? ведь все легко проверить

    $ echo -n "词" > utf8.txt
    $ file -bi utf8.txt
    text/plain; charset=utf-8
    $ xxd -bi utf8.txt
    00000000: 11101000 10101111 10001101
    $ iconv -f UTF-8 -t UTF-16BE -o utf16.txt utf8.txt
    $ xxd -bi utf16.txt
    00000000: 10001011 11001101

     
  • 5.70, commiethebeastie (ok), 21:05, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –5 +/
    А ничего, что один имеет статический размер, а второй динамический?
     
     
  • 6.71, Аноним (71), 21:51, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    А ничего, что размер символов в UTF-16 перестал быть фиксированным при добавлении понятия суррогатных пар в середине 1990-х?
     
     
  • 7.89, commiethebeastie (ok), 13:47, 05/04/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А ничего, что размер символов в UTF-16 перестал быть фиксированным при добавлении
    > понятия суррогатных пар в середине 1990-х?

    И ACSII поэтому кодируется в 2 байта, а не в 1, как на UTF-8?

     
  • 4.52, НяшМяш (ok), 17:26, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А всё просто. В Objective-C все NSString хранились в памяти как UTF-16. Swift в прошлых версиях для облегчения интеропа также унаследовал эту структуру (свифтовый String внутри имел NSString как backing storage). Сейчас они переделали внутреннюю реализацию, т.к. 99% разработчиков работают с UTF-8 строками и в этом случае производительность важнее.
     

  • 1.8, Анонимс (?), 12:52, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    > официальные сборки подготовлены для Linux (Ubuntu 14.04, 16.04, 18.04)
    > версия для Linux не привязана к Objective-C Runtime, что позволяет использовать язык в окружениях, в которых отсутствует поддержка Objective-C.
    > выполняемый в тестах Apple на 30% быстрее кода на Objective-C
    > вместо сборщика мусора в Swift используются средства подсчёта ссылок на объекты

    Swift уничтожит C/C++ и станет основным языком разработки в Linux? Тревожные новости, однако.

     
     
  • 2.11, Аноним (11), 13:03, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Не станет. Си - это почти асм, простейшая реализация, "без колонок, без усилка и без защиты от дурака, которого ты тут валяешь, Ник". Ядро линукса будут писать только на Си, а что там понаприкручивают поверх него - это уже не забота Торвальдса
     
     
  • 3.13, Анонимс (?), 13:11, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ядро линукса будут писать только на Си

    Речь идёт не о системном программировании ядра Linux, а о прикладном программировании, где как раз есть все шансы у Swift потеснить С/С++.


     
     
  • 4.17, Аноним (17), 13:46, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пусть сначала хотя бы objective-c потеснит.
     
     
  • 5.53, НяшМяш (ok), 17:26, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    В линуксе?
     
     
  • 6.78, Fnjv (?), 12:29, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Swift даже на маке никому не сдался, все как кодили на Оbjective-С так и дальше будут. Swift мертворожденное поделие.
     
  • 4.21, Попугай Кеша (?), 14:06, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    XCode формочки уже научился собирать под Linux? XCode может быть есть под Linux? Нет? Не соберет. Swift-разрабы на рынке дорогие. Они нужны на Mac/iOS.

    А Linux swift чисто по фану.

     
     
  • 5.31, Аноним (-), 14:44, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Они нужны

    не очень

     
     
  • 6.37, Попугай Кеша (?), 15:21, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Зависит от рынка труда
     
     
  • 7.54, НяшМяш (ok), 17:30, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Я бы не отказался поменять nodejs на swift (тем более что я его знаю) в бекенд разработке. Из альтернатив заказчики рассматривают разве что Go, но язык (будем честными) весьма упрт и сильно отличается от С-подобной группы языков. На Java тоже нет особого желания писать, там свои приколы (разве что на Kotlin перейти - но опять же заказчики).
     
     
  • 8.90, rex (??), 18:25, 21/05/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Как бы представляете архитектуру бекенда на swift У него, вроде, нет GC prefor... текст свёрнут, показать
     
  • 4.50, Аноним (50), 17:03, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >о прикладном программировании, где как раз есть все шансы у Swift потеснить С/С++.

    Objective-C не потеснил, и это при том, что Objective-C входит в состав GCC, с чего бы их потеснить Swift-у?

     
  • 2.20, Аноним (-), 13:57, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Посмотрим сколько у Apple займёт времени переписать WebKit Safari с С++ на Swift. А вообще лично я ещё ни разу не видел, чтобы этим Swift кто-то из программистов пользовался.
     
     
  • 3.22, Попугай Кеша (?), 14:06, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Разработчики на Swift c 99% вероятностью разрабатывают на Mac/iOS. Сюрприз? Нет?

    1% - такие чудики как на этом сайте

     
     
  • 4.30, Аноним (30), 14:41, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Ну вот например Skype для макоси написан на Typescript/javascript, а для iOS многие пишут на  Xamarin или Qt. Никто не заморачивается с native API уже давно.
     
     
  • 5.33, FedeX (ok), 14:55, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Ну вот например Skype для макоси написан на Typescript/javascript, а для iOS многие пишут на  Xamarin или Qt. Никто не заморачивается с native API уже давно.

    Каждое утверждение в этой цитате - чушь.

     
     
  • 6.36, Попугай Кеша (?), 15:21, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Тут ошибка в слове многие ) Многие среди его окружения видимо из 2.5 студентов-разработчиков
    Насчет Skype для MacOS не знаю. Но все возможно
     
     
  • 7.40, Аноним (30), 16:09, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Если ты не знаешь даже насчёт Skype для macOS, то ты не знаешь ничего, как и комментатор выше.
     
     
  • 8.55, FedeX (ok), 17:32, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ой помню как Делфисты радовались в свое время, что скайп на делфи написан и везд... текст свёрнут, показать
     
     
  • 9.63, Сишник (?), 18:24, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Приложение для видеозвонков на жс делается очень легко благодаря WebRTC, так что... текст свёрнут, показать
     
     
  • 10.66, FedeX (ok), 19:03, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Оно там уже научилось без проблем звонить хотя бы между Firefox Chrome и другими... текст свёрнут, показать
     
  • 7.41, Аноним (30), 16:13, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Telegram для макоси на Qt если что. И все эти приложения не то что не выглядят чужеродными, они выглядят лучше какого-нибудь iMovie например.
     
     
  • 8.56, НяшМяш (ok), 17:34, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Версий Telegram для макоси две, если что На Qt и нативная на Swift На хакинто... текст свёрнут, показать
     
     
  • 9.62, Аноним (-), 18:22, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Всплески и energy impact там не от видео, а от блокировок роскомпозора ... текст свёрнут, показать
     
  • 9.80, Fnjv (?), 12:33, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Какую версию Хакинтоша юзаете ... текст свёрнут, показать
     
  • 4.79, Fnjv (?), 12:31, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    На Мак/iOS кодят на Objective-C и только пара хипстеров-велосипедистов на Swift.
     
  • 3.39, prokoudine (ok), 15:56, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А вообще лично я ещё ни разу не видел, чтобы этим Swift кто-то из программистов пользовался.

    Ты не видел программистов, пишущих под iOS. Окей.

     
     
  • 4.45, Аноним (30), 16:23, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Видел разумеется. Но пишут они на Xamarin и Objective-C.
     
     
  • 5.51, prokoudine (ok), 17:10, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ObjC и есть нативка для iOS.

    Последняя студия, которых мы собеседовали на проект, пишут именно натив -- и ObjC, и свифт. Замарин не любят и почти не используют.

     
  • 3.57, НяшМяш (ok), 17:37, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Пользуюсь Swift с конца 2015 года. На ObjC один раз за 3 года написал маленький лоадер для программы и то только потому, что бинарник-запускалка на 50 строк получился аж в 6 метров на свифте против 40 кб на обжси. И как раз это и должен починить 5 свифт.
     
  • 3.64, Свифтон (?), 18:27, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > чтобы этим Swift кто-то из программистов пользовался.

    кодовая база Телеграм реализована на Swift под OS X и iOS. На iOS он называется Telegram X и садит батарею меньше чем C++ с Обж Ц обвязкой.

    В 2020 Apple выкатит единый фреймворк разработки приложений под iOS/OS X под названием Марципан
    https://www.imore.com/marzipan

    Очевидно, что это будет Swift-only фреймворк и число разработчиков под мобилы/десктопы только увеличится, так как обналичивать монеты с двух платформ куда веселее, чем с одной.

     
     
  • 4.81, Аноним (81), 15:00, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Но ведь гуй, работающий и на десктопе, и на мобиле, обычно работает плохо и там и там? Чувствую, кактус получится.
     
  • 2.65, Аноним (65), 18:54, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Kotlin Native по сути улучшенная версия Swift. При этом позволяет совмещать код на Swift с кодом на Kotlin примерно так же как Kotlin JRE c Java.
     
  • 2.85, Мишаня_тупой_ватник (?), 20:35, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Булки расслабь и тревожность отступит. С/С++ ещё сотни лет будут рулить.
     

  • 1.9, Аноним (9), 12:56, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Продуманный язык. Жаль, что уже не сможет вытеснить Go
     
     
  • 2.14, Аноним (14), 13:13, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Продуманный язык.

    Уберите клоуна с арены! Свой индивидуальный синтаксис под каждую микрофичу - это "продуманный"? Понатыкали кусков из разных языков и зарелизили что получилось, не более.

    Продуманный - это Lisp, C.

     
     
  • 3.48, Аноним (48), 16:37, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    C - более-менее, а вот lisp - да, продуманней некуда. Но это только потому, что проще тоже, наверное, некуда.
     
     
  • 4.72, freehck (ok), 03:08, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > lisp - да, продуманней некуда. Но это только потому, что проще тоже, наверное, некуда.

    Проще?! Вы вообще лиспы видели?

     
  • 2.46, Анон102010210 (?), 16:35, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Жаль только медленный ппц и в компиляции и в принципе. Даже на том же godbolt можно сравнить: для аналогичных функций в swift раза в 2,5 - 3 больше ассемблерного кода чем на С++. Я понимаю что объем asm кода это не всегда надежный показатель, но в большинстве случаев все же позволяет делать уверенные выводы.
     
     
  • 3.59, НяшМяш (ok), 17:46, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну язык и не позиционировался как убийца плюсов. В первую очередь эппл хочет перетащить на него побольше разрабов с Obj-C и протащить как язык для бекенд разработки (даже сделали отдельный комитет под это https://swift.org/server/). Они хотят своими фичами сразу на два стула сесть. А системным языком его и не называли никогда. В той же макоси драйвера пишутся на ограниченном подмножестве C++ (без исключений и ещё чего-то), даже не на обжективе (ибо медленный).
     

  • 1.27, Аноним (27), 14:24, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Документация/книги на русском есть?
     
     
  • 2.42, Аноним (42), 16:15, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Литературы масса. В т.ч. на русском. Жалко, мне не пригодилась, ибо пишу на С++/Qt для Linux/macOS/Windows 100% кроссплатформенный код.
     
     
  • 3.47, Анон102010210 (?), 16:37, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Мне пару раз пригодилось. Довольно лаконичный язык
     
     
  • 4.83, Аноним (83), 19:17, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А UI там можно писать для Linux платформы? Примеры связко с сишным кодом есть?
    Под другие дистрибутивы надо собирать или кто-то добренький есть?
     

  • 1.28, Я (??), 14:28, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    остановитесь, зачем еще один язык, тут один то выучить не успеваешь, а еще кучу нагородили нахрена всякие гоу, свифты, вам че с++, си шарпа, джава, php мало?
     
     
  • 2.35, Попугай Кеша (?), 15:20, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    А это для тех, чтобы мучать тех, у кого нет чувства меры и критического мышления
     
  • 2.49, Аноним (49), 16:39, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    "разделяй и властвуй"
     
  • 2.60, НяшМяш (ok), 17:48, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Мало. Как ни крути, а на тот же иос без обжектива или свифта комфортно не пописать.
     
     
  • 3.61, ffirefox (?), 18:11, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Прямо слоган для рекламы простамола...
     

  • 1.34, grsec (ok), 15:08, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Официальные сборки подготовлены для Linux (Ubuntu 14.04, 16.04, 18.04) и macOS (Xcode)

    Удивило в хорошем смысле.

     
  • 1.38, yet another anonymous (?), 15:44, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Каждому _языку_ --- по своему пакетному менеджеру, VCS, системе сборки!
     
     
  • 2.44, Аноним (42), 16:19, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чем C++/Qt не нравится? Работает на каждой платформе с нативным компилятором: clang, gcc, msvc.
     
     
  • 3.67, Марк Шаттлворт (?), 19:28, 26/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Чем C++/Qt не нравится?
    >C++

    Сложна и объективно не нужно в большинстве случаев.

     
     
  • 4.73, Аноним (73), 06:58, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Когда ваш продукт рабоатет на всех прошлых и будущих версиях ОС и ставится без плясок с бубном - это полезно.
     
     
  • 5.76, Аноним (76), 10:50, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    жалко, что это не про Qt
     
     
  • 6.86, Мишаня_тупой_ватник (?), 20:42, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Такие вбросы стоит сопровождать фактами. Я вот вижу что на моём ПК с Дебиан и на вин-планшете тот-же smplayer юзающий qt работает одинаково отлично, а вы врёте.
     
  • 2.77, Аноним (77), 11:08, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Каждому _производителю_железок_ --- по своей операционке, язык, пакетному менеджеру, VCS, системе сборки и т.д.
     

  • 1.68, Аноним (68), 19:32, 26/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В комплекте идет Clang-7. Забавно.
     
     
  • 2.74, Аноним (73), 07:00, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    И это хорошо. Clang в силу его как бы повышенной строгости способствует улучшению качества кода, даже если вы создаете основную версию программы не в нем.
     
     
  • 3.82, Аноним (68), 19:03, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ты сам то понял что сказал?
     

  • 1.84, Аноним (83), 19:18, 27/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Под WIdnows то есть версия?
     
     
  • 2.87, Мишаня_тупой_ватник (?), 20:43, 27/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    А нафига оно под виндой(как и под линуксом)?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру