Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Ke nahana hore ke fane ka lipuo tse ngata ho basebetsi-'moho, bareki, le ho bua phatlalatsa mosebetsing oa ka oa IT. Ka lilemo tse ngata, Powerpoint e bile khetho ea tlhaho le e tšepahalang ho nna joalo ka sesebelisoa sa tlhahiso ea li-slide. Empa selemong sena boemo bo fetohile ka boleng. Ho tloha ka February ho ea ho May, ke bile le monyetla oa ho bua likopanong tse hlano, 'me li-slide tsa litlaleho li ne li lokela ho lokisoa ka nako e khutšoanyane, empa ka boleng bo phahameng. Ho ile ha hlaha potso mabapi le ho abela batho ba bang karolo eo ea mosebetsi o mabapi le polane e bonahalang ea li-slide. Ka lekhetlo le leng ke ile ka leka ho sebetsa le moqapi, ho romela lifaele tsa .pptx ka poso, empa mosebetsi o ile oa fetoha moferefere: ha ho motho ea neng a tseba hore na ke phetolelo efe ea li-slide "e ncha ka ho fetisisa", 'me sebopeho se ne se "tsamaea" ka lebaka la phapang ea Powerpoint. liphetolelo le lifonte mochining oa rona. Mme ka etsa qeto ya ho leka ntho e ntjha. Ke e lekile, mme ho tloha ka nako eo ha ke so ka ka nahana ka ho khutlela Powerpoint.

Re batla eng

Hoo e ka bang selemo le halofo e fetileng, k'hamphani ea rona e ile ea khaotsa ho sebelisa Lentsoe ho theha litokomane tsa morero, kaha e ile ea kopana le mathata a tšoanang: le hoja Lentsoe le le molemo bakeng sa ho thaepa tokomane e nyenyane, ha molumo o ntse o hōla, mathata a hlaha ka tšebelisano 'moho le ho fumana boleng ba boleng bo phahameng le bo phahameng. moralo o kopaneng. Khetho ea rona e ile ea oela AsciiDoctor, 'me ha ho mohla re khaotsang ho thabela khetho ena, empa ena ke sehlooho sa sehlooho se arohaneng. Ka nako e ts'oanang, re ithutile katleho ea e 'ngoe ea melao-motheo ea DevOps ea "ntho e 'ngoe le e' ngoe e le khoutu", kahoo khetho ea litlhoko tsa theknoloji e ncha ea ho theha li-slide tsa tlhahiso e ne e hlakile:

  1. Tlhahiso e tlameha ho ba faele e hlakileng ka puo ea matšoao.
  2. Li-slide tsa rona li mabapi le merero ea ntlafatso, kahoo markup e lokela ho etsa hore ho be bonolo ho e kenya, ntle le ho sebelisa mekhoa ea ka ntle
    • likhechana tsa khoutu tse nang le tokiso ea syntax,
    • litšoantšo tse bonolo ka mokhoa oa libopeho tsa geometri tse hokahaneng ka metsu,
    • Litšoantšo tsa UML, li-flowchart le tse ling.
  3. Moralo oa tlhahiso o tlameha ho bolokoa ka har'a sistimi ea taolo ea mofuta.
  4. Netefatso le kopano ea li-slide tse felileng li lokela ho etsoa ka sistimi ea CI.

Kajeno, ho na le likhetho tse peli tsa mantlha tsa ho theha li-slide ka lipuo tsa markup: package lehlaseli bakeng sa LaTeX kapa e 'ngoe ea meralo ea ho theha li-slide ka HTML/CSS (SenolaJS, ho bua, mokatong.js le tse ling tse ngata).

Le hoja moea oa ka o lutse ho LaTeX, kelello ea ka e ile ea laela hore khetho ea tharollo eo ke neng nke ke ka e sebelisa ke 'na feela e lokela ho ba ka lehlakoreng la tharollo e tloaelehileng ho batho ba bangata. Ha se motho e mong le e mong ea tsebang LaTeX, 'me haeba tloaelo ea hau ea letsatsi le letsatsi e sa amane le ho ngola lingoliloeng tsa mahlale, ha ho na monyetla oa hore u be le nako ea ho ikakhela ka setotsoana lefatšeng le leholo, le rarahaneng la sistimi ena.

Leha ho le joalo, ho sebetsa hantle ha HTML/CSS ha se tsebo e atileng hantle: Ka mohlala, ha ke na tsebo ka botlalo ho eona. Ka lehlohonolo, AsciiDoctor e seng e ntse e tsebahala e tla ho thusa: converter asciidoctor-revealjs E u lumella ho etsa li-slide tsa RevealJS u sebelisa letšoao la AsciiDoctor. 'Me ho bonolo ho ithuta le ho fumaneha ho bohle!

Mokhoa oa ho khouta li-slide

Ho utloisisa moelelo oa li-slide tsa li-coding ho AsciiDoctor, tsela e bonolo ka ho fetisisa ke ho fana ka mehlala e tobileng. Tsena kaofela li tsoa ho li-slide tsa 'nete tseo ke li entseng bakeng sa lipuo tsa ka tsa kopano selemong sena.

Selaete se nang le sehlooho le lenane la lintho tse bulang ka mor'a tse ling:

== Зачем нам Streams API?

[%step]
* Real-time stream processing
* Stream-like API (map / reduce)
* Под капотом:
** Автоматический offset commit
** Ребалансировка
** Внутреннее состояние обработчиков
** Легкое масштабирование

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Sehlooho le snippet ea khoutu ea mohloli e nang le tokiso ea syntax:

== Kafka Streams API: общая структура KStreams-приложения

[source,java]
----
StreamsConfig config = ...;
//Здесь устанавливаем всякие опции

Topology topology = new StreamsBuilder()
//Здесь строим топологию
....build();
----

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Ha ho lokisetsoa puo, li-demos tsa khoutu li fetoloa khafetsa le lintlafatso, kahoo bokhoni ba ho kopitsa le ho beha "khoutu e tala" ka kotloloho ho slide ke ba bohlokoa haholo, ho netefatsa hore demo e nakong ntle le ho tšoenyeha ka ho totobatsa li-syntax.

Sehlooho, papiso le mongolo (sebopeho selaeteng se etsoa ka liseleng Litafole tsa AsciiDoctor):

== Kafka Streams in Action

[.custom-style]
[cols="30a,70a"]
|===
|image::KSIA.jpg[]
|
* **William Bejeck**, +
“Kafka Streams in Action”, November 2018
* Примеры кода для Kafka 1.0
|===

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Ka linako tse ling sehlooho ha se hlokehe, 'me ho hlakisa ntlha ea hau u hloka setšoantšo se tletseng skrineng:

[%notitle]
== Жить в легаси нелегко

image::swampman.jpg[canvas, size=cover]

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Hangata khopolo e hloka ho tšehetsoa ka setšoantšo se bonolo, ka sebōpeho sa "likhutlo tse hokahaneng ka metsu." Ka lehlohonolo, AsciiDoctor e kopantsoe le tsamaiso Graphviz - puo e o lumellang ho hlalosa litšoantšo tsa kerafo tse ipapisitseng le tlhaloso ea li-vertices le likhokahano lipakeng tsa tsona. Graphviz e nka nako ea ho ithuta, empa ho latela mehlala e fanoeng, ho bonolo haholo ho e etsa! Ena ke tsela eo e shebahalang ka eona:

== Пишем “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;}
}
-----

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Tabeng ea ha ho hlokahala ho hlophisa tlhaloso ea setšoantšo, ho fetola tsela ea motsu, joalo-joalo, sena se ka etsoa ka ho toba ka khoutu ea tlhahiso, ho e-na le ho tsosolosa setšoantšo kae-kae le ho se kenya hape ho slide. Sena se eketsa haholo lebelo la ho sebetsa ho li-slide.

Mohlala o rarahaneng ho feta:

== Невоспроизводимая сборка
[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;}
}
-----

sephetho

Tlhahiso e le khoutu, kapa Hobaneng ha ke sa sebelisa PowerPoint

Ka tsela, ho bonolo ho leka litšoantšo tsa Graphviz le debug leqepheng Graphviz inthaneteng.

Qetellong, haeba u hloka ho kenya setšoantšo sa phallo, setšoantšo sa sehlopha kapa setšoantšo se seng se tloaelehileng ho slide, joale tsamaiso e 'ngoe e kopantsoeng le AsciiDoctor e ka thusa, SemelaUML. Mosebetsi-'moho le 'na Nikolai Potashnikov o ngotse ka bokhoni bo pharaletseng ba PlantUML poso e arohaneng.

Ho fetola morero oa nehelano hore e be khoutu e bolokiloeng ho sistimi ea taolo ea mofuta ho etsa hore ho khonehe ho hlophisa mosebetsi o kopaneng mabapi le nehelano, pele ho tsohle, ho arola mesebetsi ea ho theha litaba le moralo. Moralo oa li-slide (lifonte, bokamorao, li-indent) ho RevealJS o hlalosoa ho sebelisoa CSS. Tsebo ea ka ea botho le CSS e fetisoa hamolemo ke gif ena - empa ha e tšabe ha ho na le batho ba sebetsang le CSS ka boqhetseke le kapele ho feta nna. Ka lebaka leo, hoa bonahala hore ka nako ea ho qetela e atamelang ka potlako bakeng sa nehelano, re ka sebetsa lifaeleng tse fapaneng ka nako e le 'ngoe ka Git le ho hlahisa lebelo la tšebelisano-'moho le ke keng la khoneha ha u romela lifaele tsa .pptx ka poso.

Ho aha leqephe la HTML ka li-slide

Mehloli e hlakileng ea mongolo e ntle, empa u e bokella joang ho nehelano ka boeona?

AsciiDoctor ke projeke e ngotsoeng ho Ruby, 'me ho na le mekhoa e mengata ea ho e tsamaisa. Ntlha ea pele, u ka kenya puo ea Ruby 'me u tsamaise asciidoctor ka ho toba, eo mohlomong e leng eona ntho e haufi ka ho fetisisa ho baetsi ba Ruby.

Haeba u sa batle ho senya ka ho kenya Ruby, u ka sebelisa setšoantšo sa docker asciidoctor/ docker-asciidoctor, eo, ha e qala, o ka hokahanya foldara le mehloli ea morero ka VOLUME 'me u fumane sephetho sebakeng se fanoeng.

Khetho eo ke e khethileng e kanna ea utloahala e sa lebelloa, empa ke eona e loketseng ka ho fetisisa ho nna joalo ka moqapi oa Java. Ha e hloke ho kenya Ruby kapa docker, empa e u lumella ho hlahisa li-slide u sebelisa script ea Maven.

Taba ke hore morero JRuby - Ts'ebetsong ea Java ea puo ea Ruby e ntle hoo e u lumellang hore u tsamaise hoo e batlang e le ntho leha e le efe e entsoeng bakeng sa Ruby ka mochine oa Java, 'me ho sebetsa AsciiDoctor ke e' ngoe ea lisebelisoa tse tloaelehileng tsa JRuby.

ho fumaneha asciidoctor-maven-plugin eu lumella ho bokella litokomane tsa AsciiDoctor tseo e leng karolo ea morero oa Java (oo re o sebelisang ka mafolofolo). Ka nako e ts'oanang, AsciiDoctor le JRuby li jarolloa ka bo eona ke Maven, 'me AsciiDoctor e matha sebakeng sa JRuby: ha ho hlokahale ho kenya letho mochine! (ntle le sephutheloana graphviz, e hlokahalang haeba o batla ho sebelisa GraphViz kapa PlantUML litšoantšo.) Beha lifaele tsa hau tsa .adoc ka har'a foldara. src/main/asciidoc/. Mona mohlala oa pomnikho bokella diselaete tse nang le dithalo.

Fetolela li-slide ho PDF

Leha mofuta oa HTML oa li-slide o ikemela, ho ntse ho hlokahala hore ho be le mofuta oa PDF oa li-slide. Taba ea pele, ho etsahala hore likopanong tse ling tse sa faneng ka sebui monyetla oa ho hokahanya laptop ea hae, li hloka li-slide "ka mokhoa o hlakileng oa pptx kapa pdf," ntle le ho lebella hore le tsona li ka HTML. Taba ea bobeli, ke mokhoa o motle oa ho romella bahlophisi mofuta o sa lokisoang oa li-slide tsa hau joalo ka ha li bonts'itsoe tlalehong, ka sebopeho sa PDF bakeng sa ho phatlalatsoa ha faele ka lisebelisoa tsa kopano.

Ka lehlohonolo, sesebelisoa sa Node.js se sebetsana le mosebetsi ona. setlase, e hahiloeng motheong Mohlankana - Sistimi ea othomathike ea ho tsamaisa sebatli sa Chrome. O ka fetolela tlhahiso ea RevealJS ho PDF ka taelo

node decktape.js -s 3200x1800 --slides 1-500 
  reveal "file:///index.html?fragments=true" slides.pdf  

Maqheka a mabeli ha re qala decktape, eo re ileng ra tlameha ho tla le eona ka teko le phoso:

  • tharollo ka parameter -s e tlameha ho hlalosoa ka moeli o habeli, ho seng joalo ho ka ba le mathata ka liphetho tsa phetoho

  • ho URL ea mofuta oa HTML oa tlhahiso o hloka ho fetisa paramethara ?fragments=true, e tla theha leqephe le arohaneng la PDF bakeng sa boemo bo bong le bo bong ba mahareng ba selaete sa hau (mohlala, maqephe a mahlano bakeng sa lintlha tse hlano tsa bullet haeba a bonts'oa ka ho latellana). Sena se tla u lumella ho sebelisa PDF e joalo u le mong e le tlhahiso nakong ea tlaleho.

Ho kopanya le ho phatlalatsa ho tepo

Ho bonolo ha li-slide li hlophisoa ka bohona ha ho etsoa liphetoho tsamaisong ea taolo ea mofuta, 'me ho bonolo le ho feta ha li-slide tse hlophisitsoeng ka boiketsetso li behiloe Marang-rang hore li sebelisoe ke sechaba. Li-slide tse tsoang Inthaneteng li ka "bapaloa" habonolo ka pel'a bamameli ho tloha mochine ofe kapa ofe o amanang le Inthanete le projector.

Kaha re sebelisa GitHub mosebetsing oa rona, khetho ea tlhaho ea sistimi ea CI ke TravisCI, le bakeng sa ho tšoara linehelano tse seng li entsoe - github.io. Mohopolo o ka morao ho github.io ke hore litaba life kapa life tse tsitsitseng tse rometsoeng lekaleng gh-pages ea morero oa hau ho GitHub, e fumaneha ho <ваше имя>.gihub.io/<ваш проект>.

Tlatsa faele ea tlhophiso ea TravisCI, ho kenyelletsa ho bokella mofuta oa HTML oa leqephe o sebelisa Maven, ho fetolela ho PDF o sebelisa decktape, le ho kenya liphetho khoeleng. gh-pages bakeng sa phatlalatso ho github.io, e shebahala joalo kahoo.

Ho aha morero o joalo ka lehlakoreng la TravisCI, o hloka ho hlophisa mefuta e fapaneng ea tikoloho

  • GH_REF - boleng joalo ka github.com/inponomarev/csa-hb
  • GH_TOKEN - Letšoao la phihlello la GitHub. U ka e fumana ho GitHub litlhophisong tsa profil ea hau, Litlhophiso tsa Moetsi -> Li-Tokens tsa Phihlello ea Motho. Haeba u kenya tlhahiso sebakeng sa polokelo ea sechaba, joale bakeng sa tokeneng ena ho lekane ho hlalosa boemo bo le bong feela ba phihlello "Fihlella lipolokelo tsa sechaba".
  • GH_USER_EMAIL / GH_USER_NAME - lebitso / lengolo-tsoibila lebitsong leo ho sutumelletsa khoele ho tla etsoa gh-pages.

Kahoo, boitlamo bo bong le bo bong ba khoutu ea tlhahiso ho GitHub bo fella ka hore li-slide li hahuoe bocha ka liforomo tsa HTML le tsa PDF ebe li kenngoa hape ho github.io. (Ehlile, o lokela ho kenya feela ho github.io linehelano tseo qetellong u batlang ho li phatlalatsa.)

Mehlala ea merero

Qetellong, mona ke likhokahano tsa mehlala e 'maloa ea merero ea tlhahiso e nang le lingoloa tsa Maven tse hlophisitsoeng le tlhophiso ea CI bakeng sa Travis-CI, e ka qaptjoang le ho sebelisoa ha u theha merero ea hau ea tlhahiso:

Dumelang Powerpoint! Ha ke nahane hore ke tla ke ke u hloke bakeng sa lipuo tsa tekheniki :)

Source: www.habr.com

Eketsa ka tlhaloso