Pull to refresh
0
0

Пользователь

Send message
Спасибо за ответ. Голый QtQuick это как-то совсем жесть, хотя я его тоже использовал когда Controls назывались QtDesktop components и не входили в поставку qt.
Я правильно понял что вы используете Qt для кроссплатформенной разработки? Если да, то скажите как вы боритесь с тем что кросплатформенность у него мозаичная (некоторые части работают только на отдельных платформах) и насколько это вообще критично если постоянно разрабатывать на нем fulltime?
На всякий случай опишу откуда взялся вопрос — у меня есть pet project на qt который я по мере надобности обновляю на новую версию. C выходом os x mojave (и изменений в ней из-за черной темы) пришлось обновляться до новой версии 5.12 и вот тут меня ждал сюрприз — в iOS 5.12 + не запускаются компоненты из Controls 1 (по крайней мере без танцев с бубном, подробно если честно я так и не посмотрел потому как до недавнего времени продолжал пользоваться давно собранной версией с 5.11), а альтернатива того что мне нужно (в основном диалоги)в 5.13 в свою очередь не работает в андроид согласно документации. Конечно, это все решаемо- можно и разными версиями собирать, и всякие платформоспецифические обертки написать, но я в серьез задумался «а надо ли оно мне» или же все-таки послать qt с его не полной кроссплатформенностью (а это не первый раз так, я даже несколько багов в свое время заводил на тему того что очередная фича не работает на той или иной платформе) и посмотреть на что-то еще. Может быть, если писать на qt постоянно на работе это не так критично вот и хочу услышать ваше мнение

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

Я об этом и говорю, тот у кого совсем все плохо не будет особо распространяться и не попадет в статистику.
Я понял так, что вы не работаете в разработке ПО.

Наоборот, я работаю в разработке, но изначально не учился на программиста.
Насколько помню, «зарплаты выпускников» является стандартным примером неправильной выборки. Выборка по факту среди тех кто согласен сказать (а чаще всего это не спивающийся Вася который так никуда после института и не устроился, а вполне себе успешный Петя), но преподносится как средняя среди всех выпускников. Более того, даже среди тех кто ответил не факт что есть реальная корреляция между зарплатой и вузов. Например, я закончил МИРЭА и в отношении меня цифра более-менее правильная, но моя специальность по диплому не связана с ИТ и при обучении были только по семестру процедурного программирования, ООП (по факту скорее программирование в Delphi — именно про концепцию ООП там было маловато) и численных методов, на этом все по крайней мере из глобального. Насколько в таком случае корректирует то что я закончил с тем что я получаю сейчас?
А два МИЭМа (как часть ВШЭ и отдельно), а также две бауманки это так и задумано? И не связано ли то что выпускники просто МИЭМа получают больше исключительно с большим сроком работы (кстати, не исключено что и для других присоединенных вузов так же будет работать)
если вы про PowerPC, то эппл гораздо плавнее выводил эти процы — в 10.4 (2004 год) появилась поддержка x86 и только в 10.6 (2009) убрали PowerPC, 5 лет это вполне приличный срок за который многие компы меняются независимо от операционки.
Ну и плюс десктопные операционки исторически не так огорожены и даже если производитель забил на поддержку, энтузиасты могут продолжать разрабатывать приложения без особых финтов с джейлбрейком и ко
уже имея на руках вин 8.1 они вместо постепенно развития слили платформу долги запуском 10-ки

Если бы они это сделали однажды у них бы может и прокатило, но они это проделали как минимум 3 раза сливая WinMobile (ну ок — тут парадигма поменялась со стилуса на пальцы), затем Win Phone 7, а затем уже 8-ку, причем все это будучи в роли догоняющих чем и растеряли доверие
У нас на работе был случай когда приложение отклонили за косяк (не эмоджи — там что-то про хранилище данных было) который был внесен довольно давно и уже благополучно прошел 2 или 3 ревью. Так что есть вариант что просто не заметили и отдельные проскочившие приложения не показатель. А так у меня у самого есть приложение-утилита в котором эмоджи используются как значки на кнопках навбара и которое в таком виде прошло ревью в ноябре 2018 года (я уже знал тогда про этот запрет, но решил попытаться на дурачка проскочить — типа при публикации первой версии запрета еще не было, а потом забыл поправить)
Могу еще добавить что я пробовал и менять переменную снаружи пока функция висела на семафоре, тоже сработало в обе стороны
Меня заинтересовал ваш комментарий и я решил проверить, накидал в плейграунде вот такой пример:
import Foundation

let sem1 = DispatchSemaphore(value: 0)
let sem2 = DispatchSemaphore(value: 0)

func quad(_ a: inout Int) {
    print("Into function quad")
    a = a * a
    print("Internal a = \(a)")
    sem1.signal()
    sem2.wait()
    print("Return from quad")
}

var a = 2
print("Initial a = ", a)
DispatchQueue.global().async {
    quad(&a)
}
sem1.wait()
print("After sem1 signal a = ", a)
sem2.signal()
DispatchQueue.global().asyncAfter(deadline: .now() + 1.0) {
    print("Final a = ", a)
}

Вывод:
Initial a =  2
Into function quad
Internal a = 4
After sem1 signal a =  4
Return from quad
Final a =  4

Как видите, строка «After sem1 signal a = 4» выводится до выхода из функции quad, но тем не менее там a уже равно 4. Либо я вас не правильно понял, либо же вы что-то не то написали
Где-то мне попадалось что там помимо Котельникова, Найквиста и Шеннона было еще несколько формулировок похожих теорем в других странах (вроде в Германии или Франции и Японии), так что идея в то время, по-видимому, практически летала в воздухе.
Пример полиморфизма без ООП это перегружаемые функции и операторы, да, это статический полиморфизм и он резолвится компилятором в процессе сборки, но почему бы и нет? Вы можете, конечно, возродить что это C++ так умеет, но не чистый С, но именно с ООП это механизм не связан никак, просто возможность компилятора. Шаблоны (template), наверное, тоже можно назвать полиморфизмом и они тоже слабо связаны с ООП. Ну и если вся разница только в типах, то некое подобие перегрузки можно сделать и на чистом С макросами типа #define SUM(a,b) a+b
Ну так много кто выявляет ошибки на этапе компиляции/написания, даже для plain c ворнинги (которые легко превращаются в ошибку через -werror) посыпятся если попытаться, например, в указатель на double прокинуть указатель на int. Правда, я тут слазил в оригинал и там Safer т.е. платформа не «безопасная», а просто «безопаснее» [чем Obj-C] с чем сложно спорить и это косяк перевода
Честно говоря, сомнительная статья. Особенно глаз зацепился за следующее
Безопасная платформа — компилируйте и фиксите ошибки прямо во время написания кода.

Как связана безопасность и возможность фиксить ошибки во время выполнения? И, кстати, я не понимаю что автор имел в виду под фиксами во время выполнения.
В Swift два вида кортежей.

Кортеж это просто группировка значений и программист для собственного удобства может дать этим значениям имена, причем может дать их даже не всем, например, let a = (a: 1, 2, c:3) (другой вопрос что так лучше не делать), а может и наоборот к именованным переменным по номеру обращаться, так что никакого разделения на два типа по факту нет.
Ну как бы собеседование — процесс обоюдный и на нем не только вы узнаете кандидата, но и кандидат вас (а то в вакансиях и резюме все горазды писать как у них все хорош), а сразу начинать с тестового выгодно только работодателю. Хотя конечно тут много дополнительных вопросов:
— кто инициировал общение — я это уже упоминал выше и скорее всего именно это меня и настораживает, а конкретно прилетевшая недавно на почту вакансия где мне даже не представились, но сразу речь про тестовое задание
— что за компания (собственно, с чего началась эта ветка) и насколько я в нее хочу попасть
— насколько у кандидата есть сейчас время и т.п.
Так убегает-то не сотрудник, а всего лишь человек который подумывал пойти к ним (причем еще большой вопрос кто инициировал контакт) и который вполне может посчитать что ему не интересно тратить столько времени на эту вакансию.
Мне кажется, тут автор не прав, есть разница между просто «знаю язык» (студенты из РФ и Китая, не знаю насколько для Индии верно) и «постоянно применяю его на практике» (студенты из США не важно родной ли у них английский). Когда у меня был длительный проект с долгими созвонами на английском (иногда 1 на 1 с разрабом из США на пару часов) мне было заметно проще и слушать, и говорить, и даже читать на английском, но проект закончился и я иногда практически чувствую как у меня в голове шестеренки скрипят если надо что-то сформулировать, хотя формально уровень до — во время — спустя пару лет после проекта и не менялся (я тогда работал в конторе где английский проверялся каждый год тестом + устно)
когда вы не можете инициализировать свойство, которое не nil в момент создания. Типичный пример — outlet у Interface Builder, который всегда инициализируется после его владельца. В этом особенном случае, если в Interface Builder всё правильно сконфигурировано — вам гарантировано, что outlet не-nil перед его использованием.

Не гарантированно, бывает контроллер уже создан и активен, а вот вьюха его еще не загрузилась и оутлеты пустые. Из наиболее часто встречаемого попробуйте пихнуть контроллер в UITabbarController — у него все подчиненные контроллеры создаются вместе с ним, а вот их вью загружаются при первом переходе на них. Причем ходили слухи что таббар и выгрузить вью может, но с такой ситуацией я на практике не сталкивался в отличии от пустых оутлетов
Тут решающее значение имеет то что ваш полковник изначально из другой области, а синдромом «начальник самый умный и компетентный» ИМХО чаще всего страдают начальники которые сами вышли из тех же сотрудников и не могут до конца абстрагироваться от того что они теперь не про технологии, а про управление и администрирование.
А макросы подойдут? Если да, то можно сделать вот так:
#define p printf
#define c case
#define b break;

и заменить все вхождения case, printf и break;. Это сэкономит 155 символов и в сумме вроде получается меньше 1000

Information

Rating
Does not participate
Registered
Activity