Ձեր նախագծում արդյոք իրականացված են DevOps պրակտիկաներ կամ կա թիմ, որը զբաղվում է զարգացման և շահագործման գործընթացների ավտոմատացման և ինտեգրմանությամբ?
Java
Ի՞նչ փոփոխություններ կմտցնեիք վերջին իրականացված նախագծում, իմանալով այն, ինչ հիմա գիտեք։
Գրեք թեստեր ծանուցումների ֆիլտրացման համակարգի համար՝ օգտագործելով JUnit 5 և Mockito, ընդգրկելով հիմնական սցենարները՝ null/քաղցր մուտք, վավեր ծանուցում, ուղարկողի արգելք, ալիքով ֆիլտրում, կրկնօրինակումների հեռացում։
Ինչպես է կառուցված և բաժանված ձեր նախագծի թիմը։
Ի՞նչ ընթացիկ նախագծեր կամ առաջադրանքներ եք իրականացնում վերջին ժամանակներում։
Ի՞նչ է տևողության բարդությունը տարր ավելացնելու գործողության համար ստեքում։
Ինչպե՞ս է միկրոսերվիսը որոշում, թե ինչպես կապ հաստատել մյուս ծառայության հետ ուղիղ զանգի մոտեցմամբ։
Ինչպե՞ս է որոշվում HashMap տվյալների կառուցվածքում get մեթոդի ժամանակային բարդությունը։
Կարող եք բացատրել, թե ինչ է միջնորդական վիճակը համակարգում?
Ինչպե՞ս կարելի է օպտիմալացնել ծանուցումների ֆիլտրացման համակարգի իրականացմանը:
/* Կազմակերպությունը մատուցում է զանգվածային ծանուցումների ծառայություն այլ բիզնեսների համար: Ապրանքի սեփականատերը խնդրեց ստեղծել ծանուցումների ֆիլտրային համակարգ՝ հաշվի առնելով օգտվողների նախընտրությունները: ## Տեղեկություններ Ծանուցում՝ - ծանուցման ID - ծանուցման տեսակ (EMAIL, SMS, PUSH) - ստացող (օգտագործողի ID) - հաղորդագրության տեքստ Ստացողը կարող է ունենալ նախընտրական կարգավորումներ՝ - թույլատրված ծանուցման ալիքներ (տիպերի ցանկ) - արգելված ուղարկողներ (ուղարկողների ID-ների ցանկ) Ուղարկված ծանուցումների պատմություն՝ - օգտվողին ուղարկված ծանուցումների ցանկ ## Կարևոր Օգտագործողների կարգավորումները և ուղարկված ծանուցումների պատմությունը տրամադրվում են այլ համակարգի բաղադրիչների կողմից: Դրանք ստանալու համար պետք է նախագծել պայմանագրեր: Պահպանման իրականացման կարիք չկա: ## Առաքելություն Գրել ծանուցումների ֆիլտրային համակարգ, որը՝ - ընդունում է ֆիլտրելու ցանկը և ուղարկողի ID-ն - բացառում է օգտվողի նախընտրություններին չհամապատասխանող ծանուցումները - իրականացնում է կրկնօրինակների պաշտպանություն՝ ներառյալ վերջին 24 ժամում ուղարկված հաղորդագրությունները: Դուբլիկատները համարվում են նույն ID-ով և նույն օգտվողին ուղղված հաղորդագրությունները - վերադարձնում է ֆիլտրացված ցանկը՝ պատրաստ ուղարկման: Ուղարկումը ձեր գործառույթը չէ՝ այն կիրականացնի այլ թիմը: Ձեր գործառույթը միայն ֆիլտրումն է: */ class NotificationFilter { UserSettingsService userSettingsService; NotificationHistoryService notificationHistoryService; public ??? filter(??? senderId, List<???> msgs) { // TODO implement } } interface UserSettingsService { // TODO any functions } interface NotificationHistoryService { // TODO any functions }