В докладе Андрей расскажет о том, как начать использовать C# 8 nullable reference types, с какими проблемами и особенностями их работы можно столкнуться и как их решить.
В докладе будет показано:
- как постепенно переводить большой проект на работу с nullable reference types;
- как при помощи аннотаций помочь компилятору понять сложные контракты методов;
- как использовать nullable reference types в обобщенном коде и какие проблемы при этом могут возникнуть;
- какие подводные камни могут ожидать пользователей этой фичи языка, когда она может сработать неожиданно или неправильно, и что делать в этом случае.
Доклад будет интересен всем, кто планирует использовать nullable reference types, т.к. раскрывает подробности их работы. Наиболее полезен он будет тем, кто планирует использовать их в больших проектах, которые невозможно перевести на использование NRT и проаннотировать целиком за короткое время; проектах, в которых используются собственные решения для ассертов или исключений, либо методы со сложными контрактами, связывающими наличие null во входных и выходных значениях, т.к. эти методы придется аннотировать для корректной работы компилятора с ними.