The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Компания Apple представила язык программирования Swift 3.0, opennews (?), 20-Сен-16, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


14. "Компания Apple представила язык программирования Swift 3.0"  –2 +/
Сообщение от Аноним (-), 20-Сен-16, 11:40 
клоун: в основном их использовали в циклах, если цикл записывается по другому, то и особой необходимости в них нет.

Си:
for(int i=1; i<=10; i++) {}

Swift в стиле Си:
for var i=1; i<=10; i++ {}

Swift:
for i in 1...10 {}

Они создают свой синтаксис, который при нормальном написании кода, более удобочитаемый. А оператор "++" к удобочитаемым не относится. Си вообще - вещь в себе. Если привыкнуть, то язык удобный, но к нему ещё нужно привыкнуть.

Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

20. "Компания Apple представила язык программирования Swift 3.0"  +1 +/
Сообщение от freehckemail (ok), 20-Сен-16, 12:27 
> Они создают свой синтаксис

Скорее заимствуют. В лиспах уже 30 лет как (for ((i (in-range 10))) <block>).

> А оператор "++" к удобочитаемым не относится.

Неужели. i++ и inc(i) - такая большая разница?

Ответить | Правка | Наверх | Cообщить модератору

31. "Компания Apple представила язык программирования Swift 3.0"  –2 +/
Сообщение от Аноним (-), 20-Сен-16, 13:46 
клоун: ++а-а++ по-твоему читаемо? И ты точно помнишь приоритет операций в Swift и сможешь сказать результат выполнения выражения, если а=1?

Другой пример:

(а++)+(а++)

В Swift реализована классическая схема, когда в процессе вычисления выражения значения переменных не изменяются. Это упрощает понимание логики и позволяет избегать ошибок.

Ответить | Правка | Наверх | Cообщить модератору

33. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от iPony (?), 20-Сен-16, 13:48 
http://lh5.ggpht.com/_0W-IrdaBLsY/Sbl7jupRAMI/AAAAAAAACiI/sQ...
Ответить | Правка | Наверх | Cообщить модератору

36. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Andrey Mitrofanov (?), 20-Сен-16, 14:36 
>/0_22686_824d2f76_L.jpg

Лошадиным хьюмором -- по клоуну. Богато.

Ответить | Правка | Наверх | Cообщить модератору

47. "Компания Apple представила язык программирования Swift 3.0"  –2 +/
Сообщение от hhg (ok), 20-Сен-16, 15:30 
три тупака!
i расположена в области памяти портов вывода.
нормальная такая цветомузычка на пинах будет :-P
а вообще, это операция передёргивания..
Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

50. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от eganru (?), 20-Сен-16, 16:33 
i расположена в области памяти портов вывода - swift не имеет целью взаимодействовать с оборудованием напрямую.
Ответить | Правка | Наверх | Cообщить модератору

52. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от hhg (ok), 20-Сен-16, 16:42 
при чём тут свифт???
смотри рисунок про трёх тупых укурков.
Ответить | Правка | Наверх | Cообщить модератору

77. "Компания Apple представила язык программирования Swift 3.0"  +/
Сообщение от ы (?), 23-Сен-16, 16:58 
результат постфиксного оператора не меняет операнд, и он имеет больший приоритет, чем префиксный, придурок. это вообще не скомпилируется.
Ответить | Правка | К родителю #47 | Наверх | Cообщить модератору

35. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Crazy Alex (ok), 20-Сен-16, 14:00 
Есть вагон всяких нечитаемых конструкций. на то есть review и статический анализ. Потому что критерии "нечитаемости" для всех разные.
Ответить | Правка | К родителю #31 | Наверх | Cообщить модератору

40. "Компания Apple представила язык программирования Swift 3.0"  –3 +/
Сообщение от Аноним (-), 20-Сен-16, 14:49 
клоун: мы о разном говорим.

Взять японский, в котором у каждого (!) слова минимум два варианта произношения: бог = kami, shin; гора = yama, san; ветер = kaze, fu.

Это косяк языка, который не исправить никакой синтаксической конструкцией, и можно только накосячить ещё больше.

Вот такие синтаксические косяки есть и в ЯП.

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

В ЯП есть ключевые слова и конструкции, которые тоже используются только в одном единственном случае и могут быть удалены или заменены на общеиспользуемые. Напр. циклы do-loop и while-wend в Паскале, которые объединили в Си.

Анализ написанного кода - это следующий этап, решающий задачу как с помощью ЯП (уже не важно хороший он или плохой) написать хороший код.

Ответить | Правка | Наверх | Cообщить модератору

51. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 20-Сен-16, 16:34 
> Напр. циклы do-loop и while-wend в Паскале, которые объединили в Си.

do-loop и while-wend - это Visual Basic, а не Паскаль. А появился VB гораздо позже Си, так что пример совсем некорректен.

Ответить | Правка | Наверх | Cообщить модератору

71. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 22-Сен-16, 01:27 
Клоун, разные чтения у иероглифов, а слова читаются однозначно.
Ответить | Правка | К родителю #40 | Наверх | Cообщить модератору

42. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от freehckemail (ok), 20-Сен-16, 15:01 
> клоун: ++а-а++ по-твоему читаемо?

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

> В Swift реализована классическая схема, когда в процессе вычисления выражения значения переменных не изменяются.

Ага, как же.

<-- prog
var a = 0
func incr () -> Int {a = a+1; return a}
print("first: ", (incr()+a))
print("second: ", (incr()+incr()+a))

--> output
first: 2
second: 8

Ответить | Правка | К родителю #31 | Наверх | Cообщить модератору

44. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 20-Сен-16, 15:06 
клоун: ты привёл конструкцию, в которой программист сам захотел это сделать. Также это можно было сделать, создав функцию с передачей параметра по ссылке или функцию с отложенным вычислением.

ЯП не мешает тебе косяпорить, но оберегает от возможных косяков.

Ответить | Правка | Наверх | Cообщить модератору

45. "Компания Apple представила язык программирования Swift 3.0"  +1 +/
Сообщение от freehckemail (ok), 20-Сен-16, 15:13 
> клоун: ты привёл конструкцию, в которой...

...в процессе вычисления выражения значение переменной изменяется.

Ответить | Правка | Наверх | Cообщить модератору

46. "Компания Apple представила язык программирования Swift 3.0"  –2 +/
Сообщение от freehckemail (ok), 20-Сен-16, 15:19 
> ЯП не мешает тебе косяпорить, но оберегает от возможных косяков.

Вы бы посмотрели, что ли, на Haskell. Чтобы там накосяпорить, надо очень, очень хитро извернуться.

Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

78. "Компания Apple представила язык программирования Swift 3.0"  +/
Сообщение от твою м (?), 23-Сен-16, 17:02 
использование хацкеля само по себе тот еще косяк
Ответить | Правка | Наверх | Cообщить модератору

70. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 22-Сен-16, 01:23 
Клоун, это undefined behavior. Только эксперты с опеннета не знают этого в 2016 году.
Ответить | Правка | К родителю #31 | Наверх | Cообщить модератору

23. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 20-Сен-16, 13:00 
Подскажите, как в Swift сделать шаг цикла переменной длины?
Ответить | Правка | К родителю #14 | Наверх | Cообщить модератору

24. "Компания Apple представила язык программирования Swift 3.0"  +1 +/
Сообщение от Аноним (-), 20-Сен-16, 13:02 
Вам это не нужно. Think different, мля.
Ответить | Правка | Наверх | Cообщить модератору

25. "Компания Apple представила язык программирования Swift 3.0"  +2 +/
Сообщение от Аноним (-), 20-Сен-16, 13:05 
Наверное так:

for i in 1...10 { j = i * cycle_step; foo(j); }

Через задницу конечно, но это же яблочники у них все так.

Ответить | Правка | Наверх | Cообщить модератору

37. "Компания Apple представила язык программирования Swift 3.0"  +/
Сообщение от Andrey Mitrofanov (?), 20-Сен-16, 14:38 
> for i in 1...10 { j = i * cycle_step; foo(j); }

`cycle = random()` -пропустил! Внутри цикла. Переменной же длины.

> Через за

Ответить | Правка | Наверх | Cообщить модератору

34. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 20-Сен-16, 13:50 
for i in stride(from: 0, to: 10, by: x)
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

60. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 20-Сен-16, 20:16 
Даааа, ЭТО конечно читабельнее чем C чего уж там.
Ответить | Правка | Наверх | Cообщить модератору

62. "Компания Apple представила язык программирования Swift 3.0"  –1 +/
Сообщение от Аноним (-), 21-Сен-16, 00:51 
Вернись в свой убогий цирк под колеса..
Ответить | Правка | К родителю #14 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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