Unsafe.AsSpan: Span как замена указателям?

Автор: admin от 26-08-2019, 23:30, посмотрело: 79

Unsafe.AsSpan: Span как замена указателям?

C# — невероятно гибкий язык. На нем можно писать не только бэкэнд или десктопные приложения. Я использую C# для работы, в том числе, и с научными данными, которые накладывают определенные требования на инструменты, доступные в языке. Хотя netcore захватывает повестку дня (учитывая, что после netstandard2.0 большинство фич как языков, так и рантайма, не бэк-портируются в netframework), я продолжаю работать и с легаси-проектами.

В этой статье я рассматриваю одно неочевидное (но, наверное, желаемое?) применение Span и отличие реализации Span в netframework и netcore из-за особенностей clr.

Добро пожаловать под кат

Категория: Программирование

 

Построение пакета RPM для Rosa Linux на практике

Автор: admin от 26-08-2019, 21:40, посмотрело: 104

Если Вы уже давно пользуетесь операционной системой Linux и хоть немного разбираетесь в программировании, рано или поздно Вам может понадобиться собрать программу из исходного кода. Может быть, нужной программы не окажется в репозиториях дистрибутива. Или в этих репозиториях программа старой версии, а Вам нужна самая свежая. А может, Вы создали новую программу и хотите поделиться ей с другими пользователями.



Конечно, можно установить программу по инструкциям, прилагаемым к исходному коду. Но тогда управлять файлами программы и следить за её зависимостями нужно будет вручную. Намного лучше собрать пакет с программой и использовать встроенный в операционную систему менеджер приложений.



Надеюсь, эта статья поможет быстрее разобраться со сборкой пакета RPM для Rosa Linux или для другого дистрибутива, использующего менеджер пакетов RPM (Mandriva, RedHat). Или хотя бы подскажет, где искать информацию.



Здесь я покажу, как создавать пакеты RPM на своём локальном компьютере, на простом примере. Будем собирать программу xkb-switch в операционной системе Rosa Linux. Исходники программы будем брать с GitHub.

Категория: Linux

 

10 самых распространенных ошибок при работе с платформой Spring. Часть 2

Автор: admin от 26-08-2019, 21:20, посмотрело: 135

Салют, хабровчане. Вот и подоспел перевод второй части статьи, подготовленной специально для студентов курса «Разработчик на Spring Framework». Первую часть можно прочитать тут.



10 самых распространенных ошибок при работе с платформой Spring. Часть 2


Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении инструмент. Его базовые концепции довольно легко понять и усвоить, но для того чтобы стать опытным разработчиком на Spring, потребуются время и определенные усилия.



В этой статье мы рассмотрим некоторые из самых распространенных ошибок, совершаемых при работе в Spring и связанных, в частности, с разработкой веб-приложений и использованием платформы Spring Boot. Как отмечается на веб-сайте Spring Boot, в Spring Boot используется стандартизованный подход к созданию готовых к эксплуатации приложений, и данная статья будет придерживаться этого подхода. В ней будет дан ряд рекомендаций, которые можно эффективно использовать при разработке стандартных веб-приложений на базе Spring Boot.



На тот случай, если вы не очень хорошо знакомы с платформой Spring Boot, но хотите поэкспериментировать с примерами, приведенными в статье, я создал GitHub-репозиторий с дополнительными материалами для этой статьи. Если в какой-то момент вы немного запутались, читая эту статью, я бы посоветовал вам создать клон этого репозитория и поэкспериментировать с кодом на своем компьютере.

Категория: Программирование

 

Как и зачем мы мигрировали Preply в Kubernetes

Автор: admin от 26-08-2019, 21:20, посмотрело: 76

В этой статье я опишу наш опыт миграции Preply в Kubernetes, как и почему мы это сделали, с какими трудностями столкнулись и какие преимущества приобрели.



Как и зачем мы мигрировали Preply в Kubernetes

Категория: Программирование

 

Ищем баги в PHP коде без статических анализаторов

Автор: admin от 26-08-2019, 18:50, посмотрело: 146

Моя самая любимая часть в статическом анализе кода — это выдвижение гипотез о потенциальных ошибках в коде с последующей их проверкой.



Пример гипотезы:



Функции strpos легко передать аргументы в неправильном порядке. 


Но есть вероятность, что даже на нескольких миллионах строк кода подобная диагностика не "выстрелит", поэтому на неудачные гипотезы тратить много времени не хочется.



Сегодня я покажу как выполнять простейший статический анализ с помощью утилиты phpgrep без написания кода.







Ищем баги в PHP коде без статических анализаторов

Под катом:




  • Поиск и разбор багов в open source проектах.

  • Quick start по phpgrep.

  • Принцип работы синтаксического поиска.





Категория: Программирование

 

Security Week 35: статистика утекших паролей и атаки через Google Drive

Автор: admin от 26-08-2019, 18:50, посмотрело: 85

Security Week 35: статистика утекших паролей и атаки через Google DriveПрошедшая неделя отметилась как минимум двумя громкими событиями в сфере инфобезопасности. Впервые за долгое время для актуальных моделей Apple iPhone со свежей прошивкой iOS 12.4 доступен джейлбрейк (новость, пост на хабре). Джейлбрейк эксплуатирует уязвимость, которую закрыли в iOS 12.3, но, видимо, по ошибке снова «открыли» в свежей версии 12.4.



Вышла версия видеоплеера VLC 3.0.8, в которой закрыты несколько серьезных уязвимостей (новость), в том числе обеспечивающих выполнение произвольного кода при открытии подготовленного файла .MKV. Примечательно, что в конце июля уже сообщалось о серьезных уязвимостях, также связанных с обработкой MKV, но те проблемы в итоге оказались плодом воображения исследователя и странной конфигурации его компьютера. Зато свежие уязвимости — настоящие.



Но поговорим мы сегодня не об этом, а про пароли. Google подвел первые итоги использования расширения Password Checkup для браузера Chrome и поделился (новость, оригинальный блогпост) интересной статистикой: только четверть паролей меняется на новые, даже если пользователь извещен об утечке. А заодно рассмотрим новые попытки спамеров прорваться к пользователю, на этот раз через Google Drive.

Категория: Google

 

Кто кушает память нашего iPhone? Чистим яблоки

Автор: admin от 26-08-2019, 15:55, посмотрело: 65

Все современные устройства дивным образам подчиняются второму началу термодинамики — энтропия (в простонародье — хаос) возрастает, если к системе не прикладывать внешние усилия. За примерно 3 года использования своего iPhone я особо не прикладывал усилий к очистке памяти телефона от всякого мусора и недавно с некоторым удивлением обнаружил, что у меня занято больше 57 гигабайт из 64. Тут-то и пришла пора разобраться, кто и чем поедает память моей прелести и почистить яблочко.



У меня не было ни малейшего желания устанавливать доступные в аппсторе приложения для очистки памяти. Мало ли, что они там начистят, а ещё и денег за них отдай. Под катом — небольшой экскурс по моим находкам.



Кто кушает память нашего iPhone? Чистим яблоки

Категория: Facebook / iOS

 

10 наивных, но важных вопросов о CRM

Автор: admin от 26-08-2019, 15:25, посмотрело: 86

Трудно быть боссом. Особенно это трудно в малом и среднем бизнесе, когда ты хоть и являешься владельцем компании, всё равно попадаешь в некоторую зависимость от подчинённых, их результативности и трудоспособности. С одной стороны ты ждёшь от них честный и профессиональный подход, рассчитываешь на экспертизу, а с другой понимаешь, что нужно проконтролировать каждый процесс. Малый бизнес порождает большие и тесные корпоративные связи, но рассчитывать приходится на себя: разбираться во всём, от основного профиля деятельности до ИТ-инфраструктуры и учёта. И иногда очень хочется спокойно задать несколько наивных вопросов о какой-то непривычной для себя сфере и получить прямой ответ. Например, о CRM — штука не из дешёвых, кто-то хвалит, кто-то в панике. Разобраться бы. 



Надо? Разберёмся.



10 наивных, но важных вопросов о CRM

Категория: Программирование

 

Памяти Дэнни Коэна, специалиста по информатике, двигавшего вперёд цифровую эру

Автор: admin от 26-08-2019, 15:25, посмотрело: 78

Памяти Дэнни Коэна, специалиста по информатике, двигавшего вперёд цифровую эру
Дэнни Коэн был пилотом, специалистом по информатике, и помогал разрабатывать авиационные тренажёры



Дэнни Коэн, выдающийся специалист по информатике, помогавший разработать первый цифровой визуальный авиационный тренажёр для тренировки пилотов, ранние цифровые голосовые конференции и облачные вычисления, умер в своём доме в Пало-Альто.



Коэн, большая часть исследований которого велась в Южно-Калифорнийском университете, умер 12 августа в возрасте 81 года. По словам его сына Дэвида, он страдал от болезни Паркинсона.



В конце 1960-х Коэн был аспирантом Гарвардского университета, когда помогал разрабатывать первый коммерческий цифровой визуальный авиационный тренажёр на обыкновенном компьютере. Программа воссоздавала полёт на самолёте и ландшафт, над которым летело виртуальное воздушное судно.

Категория: Программирование

 

Оборачиваем последовательности в Swift

Автор: admin от 26-08-2019, 15:00, посмотрело: 102

Всем привет. Сегодня хотим поделиться переводом подготовленным в преддверии запуска курса «iOS Разработчик. Продвинутый курс». Поехали!



Оборачиваем последовательности в Swift

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

Категория: Веб-разработка / Game Development / iOS

 
Назад Вперед