Ndicinga ukuba ndinike imiboniso emininzi koogxa, abathengi, kunye nokuthetha esidlangalaleni kumsebenzi wam we-IT. Kwiminyaka emininzi, i-Powerpoint ibe lukhetho lwendalo noluthembekileyo kum njengesixhobo sokuvelisa isilayidi. Kodwa kulo nyaka imeko itshintshile ngokomgangatho. Ukususela ngoFebruwari ukuya kuMeyi, ndafumana ithuba lokuthetha kwiinkomfa ezintlanu, kwaye izilayidi zeengxelo kwakufuneka zilungiswe ngexesha elifutshane, kodwa ngomgangatho ophezulu. Kwaphakama umbuzo malunga nokwabela abanye abantu loo nxalenye yomsebenzi ngokuphathelele uyilo olubonakalayo lwezilayidi. Ndakhe ndazama ukusebenza nomyili, ukuthumela iifayile zepptx ngeposi, kodwa umsebenzi wajika waba yisiphithiphithi: akukho mntu wayesazi ukuba yeyiphi inguqulelo yeslayidi "entsha", kwaye i-layout "yayihamba" ngenxa yomahluko kwi-Powerpoint. iinguqulelo kunye neefonti koomatshini bethu. Kwaye ndagqiba ekubeni ndizame into entsha. Ndizamile, kwaye ukusukela ngoko khange ndicinge ngokubuyela ePowerpoint.
Sifuna ntoni
Malunga nonyaka onesiqingatha edlulileyo, inkampani yethu yayeka ukusebenzisa i-Word ukwenza amaxwebhu eprojekthi, idibene neengxaki ezifanayo: nangona i-Word ilungile ukuchwetheza uxwebhu oluncinci, njengoko umthamo ukhula, kuvela ubunzima ngentsebenziswano kunye nokufumana umgangatho ophezulu kunye nomgangatho ophezulu. uyilo olumanyeneyo. Ukhetho lwethu lwaqhubeka
- Inkcazo-ntetho mayibe yifayile yombhalo ocacileyo kulwimi lophawulo.
- Izilayidi zethu zimalunga neeprojekthi zophuhliso, ngoko ke uphawu kufuneka lwenza kube lula ukuyifaka, ngaphandle kokubhenela kwiinkqubo zangaphandle
- iziqwenga zekhowudi ezinophawu lwesintaksi,
- imizobo elula ngendlela yeemilo zejometri ezidityaniswe ngeentolo,
- Imizobo ye-UML, iiflowutshati kunye nokunye.
- Idrafti yokubonisa kufuneka igcinwe kwinkqubo yolawulo lwenguqulelo.
- Ukuqinisekiswa kunye nokuhlanganiswa kwezilayidi ezigqityiweyo kufuneka zenziwe kwinkqubo yeCI.
Namhlanje, zimbini iinketho ezisisiseko zokwenza izilayidi kwiilwimi zokuphawula: ipakethe
Nangona umphefumlo wam ulele kwi-LaTeX, ingqondo yam yachaza ukuba ukhetho lwesisombululo endingayi kuba yedwa osisebenzisayo kufuneka sibe kwicala lesisombululo esiqhelekileyo kwisangqa esibanzi sabantu. Ayinguye wonke umntu oyaziyo iLaTeX, kwaye ukuba umsebenzi wakho wemihla ngemihla awuhambelani nokubhala amanqaku esayensi, akunakufane kwenzeke ukuba ube nexesha lokuntywila kwihlabathi elikhulu, elintsonkothileyo lale nkqubo.
Nangona kunjalo, ubuchule be-HTML/CSS ayisosakhono esixhaphakileyo: mna, umzekelo, andikude nokuba nobuchule obupheleleyo kuyo. Ngethamsanqa, i-AsciiDoctor esele iqhelekile iza kuhlangula: isiguquli
Uzikhowudi njani izilayidi
Ukuqonda undoqo weekhowudi zeelayidi kwi-AsciiDoctor, eyona ndlela ilula kukunika imizekelo ethile. Zonke ezi zivela kwizilayidi zokwenyani endizenzileyo kwintetho yam yenkomfa kulo nyaka.
Isilayidi esinesihloko kunye noluhlu lwezinto ezivula enye emva kwenye:
== ΠΠ°ΡΠ΅ΠΌ Π½Π°ΠΌ Streams API?
[%step]
* Real-time stream processing
* Stream-like API (map / reduce)
* ΠΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ:
** ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ offset commit
** Π Π΅Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠ°
** ΠΠ½ΡΡΡΠ΅Π½Π½Π΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²
** ΠΠ΅Π³ΠΊΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Isiphumo
Iheda kunye nekhowudi yesiqwengana sekhowudi enokuqaqambisa isintaksi:
== Kafka Streams API: ΠΎΠ±ΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° KStreams-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
[source,java]
----
StreamsConfig config = ...;
//ΠΠ΄Π΅ΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π²ΡΡΠΊΠΈΠ΅ ΠΎΠΏΡΠΈΠΈ
Topology topology = new StreamsBuilder()
//ΠΠ΄Π΅ΡΡ ΡΡΡΠΎΠΈΠΌ ΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡ
....build();
----
Isiphumo
Ukulungiselela intetho, iidemos zekhowudi zihlaziywa ezininzi kunye nokuphuculwa, ngoko ke ukukwazi ukukopisha ngokukhawuleza nokunamathisela "ikhowudi eluhlaza" ngokuthe ngqo kwisilayidi kubaluleke kakhulu, ukuqinisekisa ukuba i-demo isexesheni ngaphandle kokukhathazeka malunga nokugqamisa kwe-syntax.
Isihloko, umzekeliso kunye nombhalo (uyilo kwisilayidi lwenziwa kwiiseli
== Kafka Streams in Action
[.custom-style]
[cols="30a,70a"]
|===
|image::KSIA.jpg[]
|
* **William Bejeck**, +
βKafka Streams in Actionβ, November 2018
* ΠΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ Kafka 1.0
|===
Isiphumo
Ngamanye amaxesha isihloko asifuneki, kwaye ukubonisa inqaku lakho udinga nje umfanekiso ogcwele isikrini:
[%notitle]
== ΠΠΈΡΡ Π² Π»Π΅Π³Π°ΡΠΈ Π½Π΅Π»Π΅Π³ΠΊΠΎ
image::swampman.jpg[canvas, size=cover]
Isiphumo
Ngokufuthi ingcamango ifuna ukuxhaswa ngumzobo olula, ngendlela βyezikwere eziqhagamshelwe ngeentolo.β Ngethamsanqa, i-AsciiDoctor ihlanganiswe nenkqubo
== ΠΠΈΡΠ΅ΠΌ βBet Totalling Appβ
ΠΠ°ΠΊΠΎΠ²Π° ΡΡΠΌΠΌΠ° Π²ΡΠΏΠ»Π°Ρ ΠΏΠΎ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΌ ΡΡΠ°Π²ΠΊΠ°ΠΌ, Π΅ΡΠ»ΠΈ ΡΡΠ³ΡΠ°Π΅Ρ ΠΈΡΡ
ΠΎΠ΄?
[graphviz, "counting-topology.png"]
-----
digraph G {
graph [ dpi = 150 ];
rankdir="LR";
node [fontsize=18; shape="circle"; fixedsize="true"; width="1.1"];
Store [shape="cylinder"; label="Local Store"; fixedsize="true"; width="1.5"]
Source -> MapVal -> Sum -> Sink
Sum -> Store [dir=both; label=" n "]
{rank = same; Store; Sum;}
}
-----
Isiphumo
Kwimeko xa kuyimfuneko ukuhlela i-caption kumfanekiso, ukutshintsha isalathiso sotolo, njl. njl., oku kunokwenziwa ngokuthe ngqo kwikhowudi yokubonisa, endaweni yokuphinda udwebe umfanekiso kwindawo ethile kwaye uphinde uwubuyisele kwisilayidi. Oku kwandisa kakhulu isantya sokusebenza kwizilayidi.
Umzekelo onzima ngakumbi:
== ΠΠ΅Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠ°Ρ ΡΠ±ΠΎΡΠΊΠ°
[graphviz, "unstable-update.png"]
-----
digraph G {
rankdir="LR";
graph [ dpi = 150 ];
u -> r0;
u[shape=plaintext; label="linter updaten+ 13 warnings"]
r0[shape=point, width = 0]
r1 -> r0[ arrowhead = none, label="master branch" ];
r0-> r2 []; b1 -> b4; r1->b1
r1[label="150nwarnings"]
b1[label="Β± 0nwarnings"]
b4[label="Β± 0nwarnings"]
b4->r2
r2[label="163nwarnings", color="red", xlabel=<<font color="red">merge blocked</font>>]
{rank = same; u; r0; b4;}
}
-----
Isiphumo
Ngendlela, kukulungele ukuzama i-Graphviz kunye nemifanekiso yokuguqula kwiphepha
Ekugqibeleni, ukuba ufuna ukufaka i-flowchart, umzobo weklasi okanye omnye umzobo osemgangathweni kwisilayidi, ngoko enye inkqubo ehlanganiswe ne-AsciiDoctor inokuhlangula,
Ukuguqula iprojekthi yokubonisa kwikhowudi egcinwe kwinkqubo yokulawula inguqulo yenza kube lula ukuququzelela umsebenzi odibeneyo kwinkcazo, okokuqala, ukwahlula imisebenzi yokudala umxholo kunye noyilo. Uyilo lwezilayidi (iifonti, imvelaphi, i-indints) kwi-RevealJS ichazwa kusetyenziswa i-CSS. Isakhono sam sobuqu kunye neCSS sidluliswa ngcono
Ukwakha iphepha le-HTML elinezilayidi
Imithombo yombhalo ocacileyo mihle, kodwa uyihlanganisa njani kwinkcazo-ntetho ngokwayo?
I-AsciiDoctor yiprojekthi ebhalwe kwiRuby, kwaye kukho iindlela ezininzi zokuyiqhuba. Okokuqala, ungafaka ulwimi lweRuby kwaye usebenzise i-asciidoctor ngokuthe ngqo, mhlawumbi eyona nto isondeleyo kubaphuhlisi beRuby.
Ukuba awufuni ukuphazamisa ngokufaka iRuby, ungasebenzisa umfanekiso wedocker
Ukhetho endilukhethileyo lunokubonakala lungalindelekanga, kodwa lolona lulungele mna njengomphuhlisi weJava. Ayifuni kufakelo lweRuby okanye idocker, kodwa ikuvumela ukuba uvelise izilayidi usebenzisa iMaven script.
Ingongoma kukuba iprojekthi
Ukufumaneka graphviz
, efunekayo ukuba ufuna ukusebenzisa iGraphViz okanye iPlantUML yemizobo.) Beka ngokulula iifayile zakho ze.adoc kwincwadi eneenkcukacha. src/main/asciidoc/
. Apha
Guqula izilayidi zibe yiPDF
Nangona uguqulelo lwe-HTML lwezilayidi lukwazi ukwanela, kuseyimfuneko ukuba ube noguqulelo lwePDF lwezilayidi. Okokuqala, kwenzeka ukuba kwezinye iinkomfa ezingaboneleli isithethi ithuba lokudibanisa i-laptop yakhe, zifuna i-slides "ngokungqongqo kwi-pptx okanye kwifomathi ye-pdf," ngaphandle kokulindela ukuba zikwakho kwi-HTML. Okwesibini, ifom efanelekileyo yokuthumela abaququzeleli inguqu engalungiswanga yeeslayidi zakho njengoko ziboniswe kwingxelo, kwifomathi ye-PDF yokupapashwa kwefayile kwizinto zenkomfa.
Ngethamsanqa, into eluncedo yeNode.js iphethe lo msebenzi.
node decktape.js -s 3200x1800 --slides 1-500
reveal "file:///index.html?fragments=true" slides.pdf
Amaqhinga amabini xa kusungulwa idekhitape, ekwakufuneka size nayo ngolingo nangempazamo:
-
isisombululo ngeparameter
-s
kufuneka icaciswe ngomda ophindwe kabini, kungenjalo kunokubakho iingxaki ngeziphumo zoguqulelo -
kwi URL yoguqulelo lwe HTML yonikezelo kufuneka ugqithise iparameter
?fragments=true
, eliza kwenza iphepha elahlukileyo lePDF kwimo nganye ephakathi yesilayidi sakho (umzekelo, amaphepha amahlanu amanqaku eebhulethi amahlanu ukuba abonisiwe enye emva kwenye). Oku kuya kukuvumela ukuba usebenzise iPDF enjalo ngokwakho njengenkcazo ngexesha lengxelo.
Ukudibanisa ngokuzenzekelayo kunye nopapasho kwiwebhu
Kufanelekile xa izilayidi ziqulunqwa ngokuzenzekelayo xa utshintsho lusenziwa kwinkqubo yolawulo loguqulelo, kwaye lulungele ngakumbi xa izilayidi eziqulunqwe ngokuzenzekelayo zixhonywe kwi-Intanethi ukuze zisetyenziswe luluntu. Izilayidi ezivela kwi-Intanethi "zidlalwa" ngokulula phambi kwabaphulaphuli kuwo nawuphi na umatshini oqhagamshelwe kwi-Intanethi kunye neprojektha.
Ekubeni sisebenzisa i-GitHub kumsebenzi wethu, ukhetho lwendalo lwenkqubo yeCI gh-pages
yeprojekthi yakho kwiGitHub, ifumaneka kwi <Π²Π°ΡΠ΅ ΠΈΠΌΡ>.gihub.io/<Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ>
.
Gqibezela ifayile yoqwalaselo yeTravisCI, kuquka ukuqulunqa inguqulelo yeHTML yephepha usebenzisa iMaven, ukuguqula kwiPDF usebenzisa idecktape, kwaye ulayishe iziphumo kumsonto. gh-pages
ukupapashwa kwi-github.io, kubonakala ngathi
Ukwakha iprojekthi enjalo kwicala leTravisCI, kufuneka uqwalasele izinto eziguquguqukayo zokusingqongileyo
GH_REF
- ixabiso elifana ne-github.com/inponomarev/csa-hbGH_TOKEN
-Ithokheni yofikelelo yeGitHub. Ungayifumana kwi-GitHub kwiisetingi zeprofayile yakho, Useto loPhuhlisi-> Iimpawu zoFikelelo zoBuqu. Ukuba ulayisha umboniso kwindawo yokugcina uluntu, ngoko ke kulo mqondiso kwanele ukucacisa inqanaba lokufikelela kuphela "Fikelela kwiindawo zokugcina zoluntu".GH_USER_EMAIL
/GH_USER_NAME
- igama / isibini se-imeyile egameni apho ukutyhala kumsonto kuya kuqhutywagh-pages
.
Ke, ukuzibophelela ngakunye kwekhowudi yokubonisa kwiGitHub kubangela ukuba izilayidi zakhiwe ngokuzenzekelayo kwi-HTML kunye neefomathi zePDF kwaye ziphinde zilayishwe kwi-github.io. (Ewe, kufuneka ulayishe kuphela kwi-github.io ezo ntetho ofuna ukuzenza esidlangalaleni.)
Imizekelo yeeprojekthi
Okokugqibela, nazi amakhonkco kwimizekelo embalwa yeeprojekthi zenkcazo-ntetho enezikripthi zeMaven ezilungelelanisiweyo kunye noqwalaselo lweCI lweTravis-CI, enokudityaniswa kwaye isetyenziswe xa usenza iiprojekthi zakho zokubonisa:
-
https://github.com/inponomarev/kstreams-examples (intetho yam yeJPoint 2019) -
https://github.com/inponomarev/csa-hb (ingxelo yam ye-Heisenbug 2019)
Sala kakuhle Powerpoint! Andiqondi ukuba ndiya kuze ndikufunele iinkcazo-ntetho :)
umthombo: www.habr.com