Orodha ya maudhui:
- Hatua ya 1: Nini Utahitaji
- Hatua ya 2: Kuweka Hifadhidata yako
- Hatua ya 3: Kuweka NetBeans
- Hatua ya 4: Kuandika Usomaji wa Darasa Letu Kuu
- Hatua ya 5: Kufafanua Njia yetu ya Unda ()
- Hatua ya 6: Kuandika Maombi Yetu
- Hatua ya 7: Kukusanya na Kufunga Faili yetu ya Mtungi
- Hatua ya 8: Hongera
Video: Kukimbia Maombi ya Java kwenye Hifadhidata ya Hifadhi ya Google: Hatua 8
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Je! Umewahi kutaka kuunda programu inayoendesha hifadhidata yenye nguvu ambayo ni rahisi kufanya kazi nayo, inaruhusu watumiaji wasio na teknolojia kuingiza data ndani, na haifanyi rasilimali za kampuni? Kweli, basi nina suluhisho kwako. Leo, tutaunda programu inayotumika kwenye Hifadhi ya Google (vizuri, haswa Majedwali ya Google) na inaweza kutumika kwa sababu tofauti tofauti. Ingawa mafunzo haya yatazingatia kujenga programu inayotegemea Tukio kuonyesha orodha ya matukio yanayotokea karibu na chuo kikuu, mradi huu unaweza kuandikwa tena kwa urahisi ili ufanye kazi kwa njia nyingi, iwe ni programu ya kikokotozi kwa programu inayofuatilia hifadhi ya bidhaa. Nimeambatanisha nakala ya ombi langu ikiwa ungependa kuona tutafanya nini. Unzip zip file na utumie JAR ndani yake. Na sasa, bila ado zaidi, wacha tuanze!
Hatua ya 1: Nini Utahitaji
Ili kuanza na mradi huu, utahitaji rasilimali zifuatazo:
-
Wavu
Ninapendekeza kupakua kwa Java EE kwani inatoa msaada wa seva, lakini ikiwa hutaki faili zingine zisizo za lazima au nafasi ya ziada ya diski, Java SE itafanya kazi pia. Netbeans itatumika kama IDE ya kuweka alama na kuandaa programu yetu
-
Jsoup
Nimejumuisha hii kwenye Maagizo ambayo unaweza kupakua. Ni kisomaji cha HTML ambacho kitaturuhusu kuvuta habari kutoka kwa lahajedwali iliyochapishwa
-
Java SDK (V8)
Pakua faili yoyote inayofaa mfumo wako. Ikiwa tayari unayo SDK ya Java katika toleo lililopita, ninapendekeza kusasisha. Baadhi ya kazi zangu hutumia misemo mpya ya lambda asili ya v8, na nambari inaweza kufanya kazi bila wao kulingana na unachofanya
-
Studio ya Visual (Hiari)
Chaguo kabisa. Ingawa NetBeans inafanya kazi ya kushangaza kuandaa na kufunga programu yetu, mimi sio shabiki mkubwa wa studio ya maendeleo. Ninapendelea kuweka nambari katika VS, kwani ina kielelezo kizuri. Ikiwa hupendi hii, kuna IDE zingine nyingi mkondoni, kwa hivyo pata chochote unachopenda zaidi
- Nambari ya Kuanza
Nimejumuisha nambari ya kuanzia katika rasilimali za hii, na pia nikachapisha kwa GitHub. Katika hili, nina faili kuu (Tukio) ambayo hutoa muundo wa faili ambayo inaendesha programu, na vile vile EventTester, ambayo hutumia JavaFX kuunda GUI ya programu. Ikiwa unataka kupata uzoefu kamili, sipendekezi kunakili na kubandika. Chukua muda wako na usome hii
Wengine:
Ujuzi wa kimsingi wa Java. Itasaidia kuwa na ujuzi katika Java, kama kazi za uandishi, kuunda vitu, n.k
Hatua ya 2: Kuweka Hifadhidata yako
Ili kuanza mradi, kwanza tunahitaji kwenda kwenye Hifadhi ya Google na kuunda karatasi ambayo tutatumia kutekeleza programu yetu. Elekea kwenye drive.google.com na ubonyeze ikoni ya "Mpya" kwenye kona ya juu kushoto, na uchague "Majedwali" chini ya hii.
Mara tu karatasi yako inapobeba, endelea na ubadilishe hii kuwa kitu kinachotambulika kwa urahisi. Baada ya kufanya hivyo, endelea kujaza safu ya juu na majina yako ya data, kama vile vitu ambavyo utakuwa unaweka katika kila safu. Kuangalia mfano wangu hapa, nimeandika safu ya juu na vitu kama "Jina la Tukio," "Tarehe," nk.
Baada ya kufanya hivyo, anza kujaza lahajedwali lako na data unayotaka kujaza. Kumbuka kuunda data yako yote vile vile, ili nambari iweze kufanya kazi nayo bila kutupa makosa. Kwa mfano, ikiwa unapanga kutumia tarehe katika nambari yako, kuwa mwangalifu kuibadilisha kila tarehe sawa, vinginevyo nambari hiyo haitaweza kuigundua.
Baada ya kuweka data yako, chapisha lahajedwali kwa kwenda "Faili" -> "Chapisha kwenye wavuti." Kutoka hapa, utahitaji kuchagua hati nzima na uhakikishe kuwa imechapishwa kama faili ya HTML, kwa njia hiyo programu yetu inaweza kuchora data kwa usahihi. Baada ya kuchapisha lahajedwali lako, hakikisha kuandika kiunga kinachotoa. Hii itahitajika baadaye kwenye programu.
Hatua ya 3: Kuweka NetBeans
Sasa kwa kuwa tuna lahajedwali letu, ni wakati wa kuanzisha NetBeans ili tuweze kuanza kuorodhesha. Baada ya kupakua na kusanikisha NetBeans na SDK yako ya Java, endelea na uunda mradi mpya. Wakati wa kuchagua aina, ulichagua kategoria ya "Java", na mradi wa "Maombi ya Java". Chagua chochote ambacho ungetaka mradi wako uitwe (Niliita jina langu tu "Tukio"). Chagua kisanduku cha kuteua kando ya "tumia folda iliyojitolea ya kuhifadhi maktaba," na ile moja zaidi ya "Unda darasa kuu." Baada ya haya, NetBeans inapaswa kuunda mradi na saraka ya mradi ili tuanze kufanya kazi, kama ile iliyoonyeshwa.
Kabla ya kuanza kuweka alama, tutahitaji pia kuhakikisha kuwa NetBeans ina maktaba ya JSoup itahitaji kuchanganua lahajedwali letu. Katika NetBeans, bonyeza kulia ikoni ya "Maktaba" chini ya saraka ya mradi wako. Chini ya menyu ibukizi, chagua kitufe cha kuongeza faili ya.jar. Sasa, nenda popote ulipoweka upakuaji wako wa jsoup (uwezekano wa folda yako ya Upakuaji, isipokuwa umeelezea mahali pengine). Chagua faili hii na uongeze maktaba. Ukipanua folda yako ya Maktaba katika NetBeans, unapaswa sasa kuona jsoup.jar katika eneo hili. Baada ya kufanya hivyo, sasa tunaweza kuanza kuweka alama kwenye programu yetu.
Hatua ya 4: Kuandika Usomaji wa Darasa Letu Kuu
Kwa hivyo, hatua ya kwanza ya kuweka alama kwenye programu yetu ni kuunda darasa lako kuu. Darasa lako kuu litakuwa mahali ambapo tunaunda vitu vyetu, tuna njia ambazo zinaingiliana na JSoup, na zaidi. Ukidhani kila mtu anayesoma hii ana uzoefu wa kuweka alama, endelea na utumie uagizaji ufuatao:
kuagiza java.util. Collections;
kuagiza java.util. List;
kuagiza java.util. ArrayList;
kuagiza java.util. Tarehe;
kuagiza java.util.stream. Stream;
kuagiza Java.util.stream. Collectors;
kuagiza java.text. SimpleDateFormat;
kuagiza java.text. ParseException;
kuagiza org.jsoup. Jsoup;
kuagiza org.jsoup.nodes. Hati;
kuagiza org.jsoup.nodes. Element;
kuagiza org.jsoup.select. Elements;
kuagiza javafx.beans.property. SimpleStringProperty;
Hii inaweza kuonekana kama nyingi, na kulingana na mradi wako, yote hayawezi kuwa ya lazima. Tunapoendelea kuweka nambari, NetBeans itakujulisha ikiwa una uagizaji wowote ambao haujatumiwa, kwa hivyo tunaweza kuwafuta kila wakati baadaye. Walakini, hii ndio tunayohitaji kwa sasa.
Baada ya kupata taarifa zetu za kuagiza, wacha tuendelee na kutangaza darasa letu. Ikiwa unapanga kutumia Tarehe au kitu chochote kisicho cha msingi wakati wa kukuza kitu chako maalum cha darasa, ninapendekeza kuongeza "vifaa vinavyolingana" kwa tamko lako la darasa. Hii itakuruhusu kulinganisha Vitu, ambavyo vitakuruhusu kupanga Orodha ya Vitu vya Darasa baadaye. Baada ya kufanya hivyo, endelea kutangaza vigeuzi vyote vya mfano utakavyohitaji. Kwa kila kamba ya umma unayounda, utahitaji pia kuunda SimpleStringProperty kwa hiyo. Hizi ni vitu vya JavaFX ambavyo vitaturuhusu kufanya kazi na vitu vyetu vya darasa kuu baadaye.
Sasa, endelea na kukutangazia ufikiaji wa kazi. Kwa kadiri anuwai yako ya kimsingi inavyokwenda, unaweza kutaja kazi zako chochote unachochagua. Walakini, kwa wewe kazi za ufikiaji wa SSP, lazima utumie fomati getFunctionNameHere (). Hii ni kwa sababu baadaye tutatumia JavaFX kuungana na kazi hizi, na kazi tutakazotumia zinahitaji tuanze kazi zetu za SSP na get. Unaweza kuona mfano hapo juu.
Baada ya kufafanua anuwai zote za ufikiaji wako, nenda mbele na ufafanue kazi zingine zozote unazohitaji. Hii ni maalum kwa watumiaji, kwani kazi unazohitaji hutofautiana kutoka mradi hadi mradi. Ikiwa unahitaji msukumo, angalia Javadoc yangu au nambari halisi na uone kazi zingine nilizozifanya. Kwa mfano, niliunda kazi ya aina ambayo hupanga Orodha na Tarehe, na kazi ambazo zilirudisha Matukio tu na hadhi za kikundi za umma, na zaidi. Ingawa ni sawa kufanya static hizi ili uweze kufanya upimaji, ninapendekeza kutokuwa na njia zozote mara tu ukimaliza utatuzi, ili kuepuka makosa tunapofikia hatua inayofuata ya mradi huo.
Hatua ya 5: Kufafanua Njia yetu ya Unda ()
Sasa inakuja sehemu muhimu zaidi ya nambari, ambapo tutafafanua njia yetu ya kuunda (), ambayo ndiyo itafikia ukurasa wetu wa wavuti na kutupatia data. Ni muhimu kutambua kwamba utahitaji kuongeza laini ya Ubaguzi kwenye tamko lako la njia, kwa hivyo sio lazima kuandika vizuizi vya kujaribu kwenye nambari yetu. Kuanza, endelea na tangaza Orodha tupu ya kitu chako. Kwa upande wangu, ilionekana kama
Matukio ya hafla = orodha mpya ya Array ()).
Sasa, nenda ukatafute hiyo URL uliyonakili mapema kwenye lahajedwali iliyochapishwa. Tangaza kiunga hiki kama kamba katika Java, na kiite chochote unachotaka. Sasa, endelea kutangaza hati mpya ya Jsoup. Unaweza kufanya hivyo kwa kuunda kipengee kipya cha hati, kama vile
Hati ya hati = Hati mpya ();
Sasa, endelea na weka hati yako kuungana na URL yetu na upate data. Ili kufanya hivyo, jaribu:
Hati ya hati = Jsoup.connect (url).get ();
Sasa, tunahitaji kupata mwili wa hati yetu, ambayo ndio mahali ambapo data halisi inahifadhiwa.
Mwili wa kamba = doc.body (). Maandishi ();
Sasa, tunahitaji kuanza kuvuta data kutoka kwa mwili. Kwa kuwa data zetu ziko kwenye meza (kwa kuwa ilikuwa lahajedwali), tunahitaji kuvuta meza nje ya mwili. Tujaribu
Jedwali la kipengee = doc. Chagua ("meza"). Pata (0);
Hii inachagua Jedwali la Kwanza. Katika kesi hii, kuna moja tu. Sasa, andika
Safu za vipengee = meza. Chagua ("tr");
Hii hutupatia safu zote kwenye meza iliyosemwa.
Kwa hivyo, sasa, data zetu zote ziko ndani ya safu hizi. Hiyo ni nzuri na yote, lakini hoja nzima ya kuandika kazi hii ndani ya darasa hili ni ili tuweze kuunda vitu kutoka kwayo. Kwa hivyo, kabla ya kurudisha hii, tunahitaji kuunda Orodha kutoka safu zetu. Ili kufanya hivyo, tunaweza kutumia kitanzi. Lazima nizingatie kuwa hii ilinichukua jaribio na makosa kidogo kupata haki. Niligundua kuwa wakati wa kuvuta kutoka safu, data zetu zingine hazina faida kwa hali hii, kwani inatoa vitu kama jina la karatasi ya kibinafsi, safu ya kwanza na maoni yetu ya data juu yake, n.k. Mwishowe, niliweka hati ya kwanza nambari ya kuingiza kitanzi hadi 2, kwa hivyo inapita vitu hivi na inaweza kuunda vitu vyetu. Mwishowe, nilitengeneza muonekano na nambari hiyo
kwa (int i = 2; i <safu.size (); i ++) {
Safu ya kipengee = safu.get (i);
Elements cols = safu. Chagua ("td");
Sasa, kuunda kitu, fanya kitu kama
Jina la kitu = kitu kipya (cols.get (0). Maandishi ());
Kwa kweli, cols.get (0) itapata data kutoka safu (i) safu (0), na kuibadilisha kuwa Kamba ambayo inaweza kupitishwa kwa mjenzi wa kitu.
Baada ya kuanzisha ujenzi wako, ongeza kwenye Orodha tuliyounda mapema na list.add (), kama vile
matukio.ongeza (jina);
Sasa, funga kitanzi chako, na piga kazi yoyote ambayo unaweza kuhitaji sasa. Kwa mfano, niliita kazi yangu ya aina kupata Matukio kwa mpangilio wa tarehe. Baada ya kufanya hivyo, rudisha Orodha yako kisha umalize na sehemu hii!
Hatua ya 6: Kuandika Maombi Yetu
Unda faili mpya na uipe jina lolote utakalochagua. Utahitaji uagizaji ufuatao:
kuagiza java.util. List;
kuagiza java.util. ArrayList;
kuagiza java.util. Tarehe;
kuagiza javafx.geometry. Pos;
kuagiza javafx.scene.layout. HBox;
kuagiza javafx.application. Application;
kuagiza javafx.collections.transformation. FilteredList;
kuagiza javafx.scene.text. Font; kuagiza javafx.scene.control. *;
kuagiza javafx.collections. FXCollections;
kuagiza javafx.collections. ObservableList;
kuagiza javafx.geometry. Insets;
kuagiza javafx.scene. Group;
kuagiza javafx.scene. Scene;
kuagiza javafx.scene.control. Label;
kuagiza javafx.scene.control.cell. PropertyValueFactory;
kuagiza javafx.scene.layout. VBox;
kuagiza javafx.stage. Stage;
Najua hii inaweza kuonekana kama mengi, lakini niamini, ni muhimu kwetu kuendesha tengeneze programu yetu. Endelea na utangaze darasa lako, na uhakikishe inaongeza Matumizi, kwani hii ni sehemu muhimu ya mradi. Mwanzoni, tangaza ubadilishaji mpya wa mfano ambao ni Kuangalia kwa Jedwali la kitu chako, kama vile
Jedwali la Tafakari ya faragha = Jedwali jipya la Kuangalia ();
Pia, tangaza njia kuu, ambayo tutatumia kuzindua programu. Kwa kweli, inapaswa kuonekana kama picha iliyo juu.
Sasa, tunahitaji kuunda njia yetu ya kuanza. Hakikisha inatupa Ubaguzi, kwani tutakuwa tunaita njia ya kuunda () kutoka kwa darasa letu la zamani. Fanya hafla mpya na vigezo tupu, ili tuweze kupiga njia ya kuunda nayo. Fafanua Orodha mpya, na uweke sawa na matokeo ya kuunda (). Sasa, tengeneza orodha mpya ya ObservableList, ambayo itatumika kujaza meza yetu na data zetu. Fafanua kama:
Data ya ObservableList = FXCollections.observableArrayList ();
Sasa, tengeneza eneo mpya na:
Eneo la eneo = eneo mpya (Kikundi kipya ());
Weka kichwa, upana, urefu, na kitu kingine chochote unachohitaji kwa chochote kinachokufaa. Unaweza kuona maadili yangu kwenye picha hapo juu. Sasa, tunaweza kuanza kuweka meza yetu. Kwa habari zote unazotaka kuonyesha, unda safu wima ya meza, kama:
Jedwali la tukio la JedwaliCol = safu mpya ya Jedwali ("Jina la Tukio"); tukioCol.setMinWidth (100); tukioCol.setCellValueFactory (Mali mpyaValueFactory ("jina"));
Kigezo cha "sName" kinapaswa kujazwa na chochote jina la kazi zako za ufikiaji wa SSP zilikuwa, kwa hivyo inaweza kupata maadili unayohitaji kwa vitu ulivyopewa. Fanya nguzo nyingi kama unahitaji, kisha uwaongeze kwenye meza na
FilteredList flEvent = orodha mpya ya Filtered (data, p -> kweli);
meza.setItems (flEvent);
meza.getColumns (). addAll (eventCol, statCol, groupCol, datingCol, descCol, locationCol);
Ikiwa ungependa kuongeza upau wa utaftaji kama nilivyofanya, angalia nambari ya habari juu ya jinsi ya kuunda Chaguo la Chaguo na uwanja wa maandishi, ambao utamruhusu mtumiaji kuchuja meza na maadili maalum. Ikiwa umechagua kufanya hivyo, itabidi pia utengeneze hBox ili iwe na hizi, na
HBox hBox = HBox mpya (chaguoBox, uwanja wa maandishi);
hBox.setAlignment (Kituo cha Kituo);
Utahitaji pia kuongeza hBox kwenye njia ya.addAll () hapa chini.
Vinginevyo, tengeneza vBox mpya kushikilia data zetu kwa kufanya
Vbox ya mwisho vbox = VBox mpya ();
vbox.getChildren (). addAll (lebo, meza);
Eneo la ((Group). GetRoot ()). PataChildren (). AddAll (vbox);
hatua.setScene (eneo); onyesho ();
Sasa, andika nambari yako na uitumie, na uone ikiwa inafanya kazi. Tumia NetBeans kupata makosa yoyote, ambayo yatatokea kama baa nyekundu upande wa kulia wa skrini. Endelea kuendesha hii mpaka usiwe na makosa zaidi, na mradi unaendesha.
Baada ya kumaliza kuweka alama yako, nitapendekeza kuunda Javadoc ya nambari yako ili watu waweze kuona nambari yako inafanya nini. Ili kufanya hivyo, chini ya kitufe cha "Run" juu ya skrini, bonyeza tu "Tengeneza Javadoc." Unaweza kupata nakala ya Javadoc yangu kwa kuangalia ndani ya faili ya zip kwenye ukurasa wa kwanza na kuchagua faili ya index.html.
Hatua ya 7: Kukusanya na Kufunga Faili yetu ya Mtungi
Mara tu ikiwa umetatua faili yako na kuifanya ifanikiwe kwa mafanikio, unaweza hatimaye kukusanya hii kuwa faili ya JAR, ambayo inaweza kuchapishwa ili wengine waweze kuendesha programu hii bila hitaji la NetBeans au Jsoup.
Kabla ya kuandaa programu yako, hakikisha kuwa kila kitu kimefanywa. Ikiwa unataka kuongeza nyaraka na kuunda JavaDoc, endelea kufanya hivyo. Ikiwa una amri yoyote ya System.out inayochapisha kwenye kiweko chako, ondoa. Kwa kweli, hakikisha programu yako haina amri au kazi zisizohitajika, na kwamba ina kila kitu inachohitaji kuwekwa.
Baada ya kufanya hivyo, bonyeza kulia kwenye jina la mradi katika NetBeans. Inapaswa kutokea kwenye menyu. Hit mali (chini kabisa ya menyu), kisha gonga "Ufungaji" upande wa kushoto wa menyu mpya ya pop. Sasa, hakikisha visanduku vyote vimewekwa alama. Skrini yako inapaswa kuonekana kama ile hapo juu.
Baada ya kufanya hivyo, bonyeza tena kulia kwenye mradi wako kwenye NetBeans. Kwa wakati huu, bonyeza kitufe cha "Safi na Ujenge", na NetBeans itaanza kuchukua maktaba na faili zako na kuzijumuisha kwenye faili ya JAR inayofanya kazi. Ikiwa yote yanaenda sawa, unapaswa kuona ujumbe kwenye koni baada ya dakika chache kukuambia JAR yako imemaliza kuandaa, na faili sasa linaweza kuendeshwa. Endesha programu hii na uhakikishe kuwa kila kitu kinafanya kazi. Ikiwa sio hivyo, rekebisha na uanze tena mchakato hadi makosa yatatekelezwa.
Hatua ya 8: Hongera
Hongera! Ikiwa ulifuata maagizo yote kwa usahihi na kuweka kila kitu vizuri, basi unapaswa kuwa na programu yako ya kufanya kazi. Jambo la kupendeza ni kwamba sasa wakati wowote wewe au mtu mwingine yeyote anayeweza kufikia lahajedwali lako kuhariri data, programu yako itaweza kubadilisha na kuitikia data mpya. Hapa kuna video ya haraka ya jinsi yangu ilivyotokea.
Ikiwa unatafuta njia za kuendelea kuboresha na kujenga, ninapendekeza uangalie zingine za hali ya juu zaidi ya JavaFX, kama FancyText au FancyButton, ambayo inaweza kuongeza picha za mwisho za juu kwenye programu yako. Bahati nzuri, na toa maoni ikiwa unahitaji msaada wowote au ona kosa katika nambari yangu!
Ilipendekeza:
Jinsi ya Unganisha NodeMCU ESP8266 kwenye Hifadhidata ya MySQL: Hatua 7
Jinsi ya Kuunganisha NodeMCU ESP8266 kwenye Hifadhidata ya MySQL: MySQL ni mfumo wa usimamizi wa hifadhidata unaotumika sana (RDBMS) ambao hutumia lugha ya muundo wa swala (SQL). Wakati fulani, unaweza kutaka kupakia data ya sensa ya Arduino / NodeMCU kwenye hifadhidata ya MySQL. Katika Agizo hili, tutaona jinsi ya kuunganisha
Kukimbia bila Skrini / Onyesho (isiyo na kichwa) kwenye Raspberry Pi au Linux Nyingine / Kompyuta zisizo na msingi za Unix: Hatua 6
Kukimbia bila Screen / Onyesho (isiyo na kichwa) kwenye Raspberry Pi au Linux Nyingine / unix Kompyuta za msingi: Wakati watu wengi hununua Raspberry PI, wanafikiria wanahitaji skrini ya kompyuta. Usipoteze pesa zako kwa wachunguzi wa kompyuta na kibodi zisizo za lazima. Usipoteze wakati wako kuhamisha kibodi na wachunguzi kati ya kompyuta. Usifunge TV wakati sio
NODEMCU LUA ESP8266 Unganisha kwenye Hifadhidata ya MySQL: 6 Hatua
NODEMCU LUA ESP8266 Unganisha kwa Hifadhidata ya MySQL: Hii inaweza kufundishwa sio kwa wenye moyo dhaifu kwani hutumia XAMPP (Apache, MySQL & PHP), HTML na kwa kweli LUA. Ikiwa una ujasiri wa kukabiliana na haya, soma! Ninatumia XAMPP kwani inaweza kusanidiwa kwenye kalamu au gari yako ngumu na inasanidi
Jinsi ya Kuchukua Takwimu kutoka kwenye Hifadhidata ya Firebase kwenye NodeMCU: Hatua 7
Jinsi ya Kuchukua Takwimu kutoka kwa Hifadhidata ya Firebase kwenye NodeMCU: Kwa hili tunaweza kufundisha, tutachukua data kutoka kwa hifadhidata katika Google Firebase na kuichukua kwa kutumia NodeMCU kwa kuchanganua zaidi. akaunti ya kuunda hifadhidata ya Firebase. 3) Pakua
Kusanidi Windows kwenye Hifadhi ya nje na kizigeu cha Mac kwenye Mac: Hatua 5 (na Picha)
Kuweka Windows kwenye Hifadhi ya nje na Sehemu ya Mac kwenye Mac: Ikiwa umenunua kitu kama msingi wa MacBook pro na umehifadhi pesa kidogo, lakini hivi karibuni gonga na suala la uhifadhi wakati unapojaribu kusanikisha windows kutumia Bootcamp Sote tunajua kuwa 128 gb haijashughulikiwa haya ili tuweze kuwa tumenunua kitu li