|
|
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovVoDAзадача в том, чтобы null не мог придти туда, где его не ждут. в Kotlin это реализуется контрактом и статической проверкой.Где гарантия, что код не может нарушать контракт? P.S. Если бы всё было так просто - доказательство корректности программ уже вовсю использовалось бы.Тут пробралось недопонимание. Спешу его развеить Kotlin поддерживает только контракт уровня java плюс проверка NotNull/Nullable. Контракт в том смысле как вы его указали (т.е. контракт для математического обоснования валидности приложения) в kotlin нет. Как нет и в других языках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 01:33:07 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
в принципе, кардинально ничего особо не меняется. Поэтому контракты так мало распространены. (я сам assert() как то мало пишу - обрабатываю руками индивидуально) Code Contracts в .NET 4.0 http://habrahabr.ru/blogs/net/91243/ Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 10:05:45 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Petro123(я сам assert() как то мало пишу - обрабатываю руками индивидуально) [/src] assert'ы к контрактному программированию никакого отношения не должны иметь. У них вообще очень ограниченная область применения - проверять такое, чего просто не может быть никогда. Использовать можно только в private методах и только при отладке/тестировании. Обычно они отключены, так что еще стоит помнить об этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 10:16:47 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
LeonidvPetro123(я сам assert() как то мало пишу - обрабатываю руками индивидуально) [/src] assert'ы к контрактному программированию никакого отношения не должны иметь. У них вообще очень ограниченная область применения - проверять такое, чего просто не может быть никогда. Использовать можно только в private методах и только при отладке/тестировании. Обычно они отключены, так что еще стоит помнить об этом. это ваше imho. У меня, Вики, и других оно другое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 10:29:41 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Petro123Leonidvassert'ы к контрактному программированию никакого отношения не должны иметь. У них вообще очень ограниченная область применения - проверять такое, чего просто не может быть никогда. Использовать можно только в private методах и только при отладке/тестировании. Обычно они отключены, так что еще стоит помнить об этом. это ваше imho. У меня, Вики, и других оно другое.Это мнение Sun которая и ввела assert-ы в язык. И их официальная рекомендация ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 10:50:22 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
кста, я хоть немного конкретики-кода внёс в обсуждение. Самый прикол, что быстрее нашёл его в Net, а не в Kotlin. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 10:55:53 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Petro123У меня, Вики, и других оно другое. У тех, кто читает вики и других - возможно. У тех, кто читает документацию, оно такое же, как у меня: http://docs.oracle.com/javase/1.4.2/docs/guide/lang/assert.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:24:24 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Leonidv ты программист? Приведи разницу в коде. Если разница будет очевидна, то то слово assert в данном топике не упоминаем. Если есть общность \ этапы перехода на контракты, то не флеймь. Нужно не только ссылки давать, а делать выводы по ним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:44:21 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Petro123кста, я хоть немного конкретики-кода внёс в обсуждение. Самый прикол, что быстрее нашёл его в Net, а не в Kotlin.конкретика это хорошо. в Net что контракты есть это тоже хорошо. через пару-тройку лет станет очевидно имеет это хоть какое нибудь преимущество или тупо повышает трудозатраты без реальных бонусов. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:46:02 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Petro123Нужно не только ссылки давать, а делать выводы по ним. Ну так возьми и сделай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:50:49 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
LeonidvPetro123Нужно не только ссылки давать, а делать выводы по ним. Ну так возьми и сделай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:52:57 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Leonidv, флейм? ______________________________________________ "Не понял" от Лёни 11906276 и чем всё закончилось 11910058 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:53:44 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
VoDAPetro123кста, я хоть немного конкретики-кода внёс в обсуждение. Самый прикол, что быстрее нашёл его в Net, а не в Kotlin.конкретика это хорошо. в Net что контракты есть это тоже хорошо. через пару-тройку лет станет очевидно имеет это хоть какое нибудь преимущество или тупо повышает трудозатраты без реальных бонусов. ;) да. Я когда копал, увидел там спринг-контракты 8-). Но инфы практически никакой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 11:55:31 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNты сильно не прав.В чём? В ограниченности статической верификации? В несоответствии контракта условиям эксплуатации? В наличии злоумышленников? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 17:22:47 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovZyK_BotaNты сильно не прав.В чём? В ограниченности статической верификации? В несоответствии контракта условиям эксплуатации? В наличии злоумышленников? в том, что не считаешь ее полезной. а хочешь каких-то мифических возможностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 17:25:49 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNв том, что не считаешь ее полезной.Чтобы это всё стало полезным - должно существенно измениться соотношение времён на разработку/отладку и тестирование.а хочешь каких-то мифических возможностей.Я привожу несложные примеры на которых будет ломаться статическая проверка контрактов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 17:37:25 |
|
||
|
Новый язык для java разработчиков - Kotlin
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovЯ привожу несложные примеры на которых будет ломаться статическая проверка контрактов. - доктор, мне больно, когда я делаю так. - не делайте так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2012, 18:12:50 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37670855&tid=2132520]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 375ms |
| total: | 524ms |

| 0 / 0 |
