Results 1 to 12 of 12
Thread: this â Java
Hybrid View
-
3rd April 2010 23:42 #1
this â Java
Çàùî íÿêîè õîðà óìèøëåíî ïèøàò "this." â êîäà ñè, ñëåä êàòî ìîãàò äà ãî ïðîïóñíàò? Ñòàâà äóìà çà îáðúùåíèå êúì íåñòàòè÷íè ïðîìåíëèâè è ìåòîäè. Êàêâè ïëþñîâå çà êóëòóðàòà íà êîäèðàíåòî ìîæå äà èìà òîâà?
MSI B450 Gaming Pro Carbon AC | Ryzen 9 5900x | HyperX Predator 3200 | Asus Strix 3090 | Kingston KC3000 2TB | WD Red 4TB | Dell G3223Q + LG 27UK650-W | Arctic Freezer 360 | Seasonic Focus GX-1000 | Lian Li O11 Dynamic
-
4th April 2010 00:55 #2
Ïúðâî äà ñïîìåíà, ÷å ïèøà íà C#, íå java.
Àêî ñïàçâàø êîíâåíöèÿòà çà "this.*" âèíàãè áè ìîãúë äà ðàçáåðåø äàëè äàäåí ìåòîä/ïîëå å ñòàòè÷åí, áåç äà ãëåäàø íàñàì, íàòàì èç êîäà. Ñúùî òàêà, àêî ðåøèø äà íàïðàâèø äàäåí member ñòàòè÷åí/êîíñòàíòà, âúâ Visual Studio å äîñòà óäîáíî äà ñå îðèåíòèðàø ïî ãðåøêèòå êúäå ñå å èçïîëçâàë è äàëè ïðîìÿíàòà òè å óìåñòíà.ASUS X570-P|R7 5800X3D@NH-U14S|2X16G DDR4 3200 Corsair VENGEANCE LPX|Samsung 980 PRO 1TB|Radeon RX 7900 XTX 24G|AOC CQ32G1|Corsair RM750x|CM 693
-
4th April 2010 01:33 #3
Last edited by God_Of_Thunder; 4th April 2010 at 01:45.
-
4th April 2010 01:58 #4Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
Íàé-âåðîÿòíî çàùîòî òå (èëè òåõíèòå øåôîâå) ñà ïðî÷åëè íÿêúäå, ÷å "òàêà òðÿáâà/òàêà å ìîäåðíî", è íå ñà ñè äàëè òðóäà äà ãî îñìèñëÿò.
Îáùî âçåòî, ìèíóñèòå ñà ïîâå÷å îò ïëþñîâåòå. Íàé-äîáðå å äà ñå èçïîëçâà ñàìî êîãàòî å íåîáõîäèìî/ñìèñëåíî - íàïðèìåð êîãàòî êîíñòðóêòóðèòå èìàò ïàðàìåòðè ñúñ ñúùèòå èìåíà êàòî ñúîòâåòíèòå ôèëäîâå, èëè ïðè àâòîìàòè÷íî ãåíåðèðàí êîä.Êàêâè ïëþñîâå çà êóëòóðàòà íà êîäèðàíåòî ìîæå äà èìà òîâà?
Áåç êîìåíòàð; äàæå íàïðàâî ñè å çà áèñåðèòåÀêî ñïàçâàø êîíâåíöèÿòà çà "this.*" âèíàãè áè ìîãúë äà ðàçáåðåø äàëè äàäåí ìåòîä/ïîëå å ñòàòè÷åí, áåç äà ãëåäàø íàñàì, íàòàì èç êîäà. Ñúùî òàêà, àêî ðåøèø äà íàïðàâèø äàäåí member ñòàòè÷åí/êîíñòàíòà, âúâ Visual Studio å äîñòà óäîáíî äà ñå îðèåíòèðàø ïî ãðåøêèòå êúäå ñå å èçïîëçâàë è äàëè ïðîìÿíàòà òè å óìåñòíà.
-
4th April 2010 02:02 #5
Íà ìåí ìè áåøå ñòðàííî, òúé êàòî èäâàõ Visual Studio. Òàì ñè èìà IntelliSense è áåç this. Ãëåäàõ êîäà íà NASA WorldWind, êúäåòî âñè÷êî å íàïèñàíî íàèñòèíà ìíîãî ïðîôåñèîíàëíî. Òà òàì ìàñîâî èçïîëçâàò this, íî íà ìåñòà ìè ñå ñòîðè, ÷å ëèïñâà. Îáà÷å ïîíÿêîãà ïðîñòî êîäà ñòàâà 2 ïúòè ïî-äúëúã è íå÷åòëèâ.
---------- Äîáàâåí ïîñëåäâàù êîìåíòàð â 02:02 ---------- Îðèãèíàëíèÿò êîìåíòàð å ïóñíàò â 01:59 ----------
Çàùî ñå çàÿæäàø, íå âèæäàì íèùî "áèñåðíî" â òîâà!MSI B450 Gaming Pro Carbon AC | Ryzen 9 5900x | HyperX Predator 3200 | Asus Strix 3090 | Kingston KC3000 2TB | WD Red 4TB | Dell G3223Q + LG 27UK650-W | Arctic Freezer 360 | Seasonic Focus GX-1000 | Lian Li O11 Dynamic
-
4th April 2010 02:21 #6Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
Äà, òîâà å åäèí îò íàé-ãîëåìèòå ïðîáëåìè ïðè íåíóæíîòî èçïîëçâàíå íà this
Èçâèíÿâàé, íå èñêàõ äà ñå çàÿæäàì. Íî òîâà äàëè å óìåñòíî èëè íå äàäåíà ïðîìåíëèâà äà å èëè äà íå å ñòàòè÷íà å âúïðîñ íà design è íå áè òðÿáâàëî äà ñå îïðåäåëÿ îò òîâà äàëè ùå ïîëó÷èø ãðåøêè ïðè êîìïèëèðàíå.Çàùî ñå çàÿæäàø, íå âèæäàì íèùî "áèñåðíî" â òîâà!
-
4th April 2010 03:59 #7
@Pheoman Ñåãà, êàòî ñè ÷åòà ïèñàíèåòî, ñå óñåùàì, êàêâà ãëóïîñò ñúì ïèñàë. Íå ñå èçðàçèõ ïðàâèëíî, âúîáùå. Òîâà çà ðàçáèðàíåòî íà òèïà íà ìåìáúðà ñ ïîãëåä âúðõó åäèí åêðàí îñòàâà.
Êàêâà áåøå èäåÿòà ìè âúâ âòîðîòî èçðå÷åíèå... Ãëåäàø åäèí ìåòîä, êîéòî ñàì ïî ñåáå ñè çàñëóæàâà òåñò... Äàëè äà å ñòàòè÷åí èëè íå? Êàê ùå èçãëåæäà òåñòà? Êîëêî ùå ñå çàãðîçè êîäà â äâàòà ñëó÷àÿ?  äîñòà ñëó÷àè, private/protected static ìåòîäèòå ìèíèìàëíî ãðîçÿò êîäà, êîéòî ùå ñå ïîêðèå ñ òåñò. Âñå ïàê, äîðè è ïðîìåíèòå äà íå ñà îò çíà÷åíèå çà ôóíêöèîíàëíîñòòà, íèêîé íå ñå ðàäâà íà ãðîçåí êîä.
×èñòî è ïðîñòî, ñëàãàéêè "this.*" íàâñÿêúäå è ïðàâåéêè ìåòîäà ñòàòè÷åí, ÷åðâåíèòå ïîä÷åðòàâêè íà ñòóäèîòî, äîñòàòú÷íî áúðçî è äîñòàòú÷íî ÿñíî ìè äàâàò ïðåäñòàâà çà òîâà êàê ùå èçãëåæäàò íåùàòà, áåç äà ïðàâÿ ìàñîâè ïðîìåíè èç êîäà. Åäèí âèä, âçèìàì ðåøåíèåòî çà ñåêóíäè âìåñòî ìèíóòè.
Ìîæå áè å âàëèäíî ñàìî ïðè VS, íî ñïîäåëÿì âèæäàíåòî ñè. Çà ñòàòèñòèêàòà, âèíàãè ïèøà "this.".
Çà äà íå ìèíà ñàìî ñ îïðàâäàíèÿòà...
Äðóãà ñèòóàöèÿ â êîÿòî "this.*" ïîìàãà å, êîãàòî â äàäåí code file èìàø ìíîãî using-è è intellisense íà Visual Studio ñå ïúëíè ñ âñåâúçìîæíè ãëóïîñòè. Íàïèñâàéêè "this.", ïîëó÷àâàø ñàìî ìåìáúðèòå íà òåêóùèÿ êëàñ è ìîæå äà ìèíåø ñ ïî-ìàëêî íàòèñêàíèÿ íà êëàâèøè çà ïèñàíåòî íà äàäåí èçðàç.ASUS X570-P|R7 5800X3D@NH-U14S|2X16G DDR4 3200 Corsair VENGEANCE LPX|Samsung 980 PRO 1TB|Radeon RX 7900 XTX 24G|AOC CQ32G1|Corsair RM750x|CM 693
-
4th April 2010 10:07 #8
Àêî ñìåíÿø, ïîäîáíî íåùî ïðîñòî òàêà, çíà÷è äóìàòà ïëàíóâàíå íå òè êàúâà íèùî.
-
4th April 2010 03:24 #9
Å ïúê â Ïèòîí å òî÷íî òàêà (òàì íå ìèíàâàø áåç this, úú ïàðîäîí, self), òà ìîæå äà ñà ñ÷åëè äà ïðåíåñàò òîçè ïðåêðàñåí ôèé÷úð îò òîçè ïðåêðàñåí åçèê, â öàðñòâîòî íà Äæàâà

Çà ìåí ëè÷íî, íàëè÷èåòî íà (èçëèøåí) this íå ïðàâè êîäà ïî-÷åòëèâ (C++)Åòî òàêà ñå ïëîäÿò òå, êàçâàì ñè àç. Ïîä íîñà òè.
"640K îught to be enough for anybody" - Bill Gates, 1981
Òåñòîâå íà áàòåðèè::Machine specs::Fract::AGG::ÍåÑåÑúðäè×îâå÷å::Baileys::blog::YouTube channel
-
5th April 2010 03:05 #10Banned
Join Date: Nov:2007
Location: Sofia
Posts: 1,400
Ïîëçâàì this, çàùîòî ìè å óäîáíî è òàêà ñúì ñâèêíàë. Íàé-âå÷å çàðàäè intellisense-a âúä Visual Studio. Ñúùî îáè÷àì 4 space tab è ñêîáàòà íà íîâ ðåä, êàêòî è âñåêè êëàñ â îòäåëåí ôàéë, îáè÷àì è äà ñè ïðàâÿ #regions è äðóãè íåùà
-
5th April 2010 17:53 #11Çåâçåê Ïðîâîêàòîð
Join Date: Sep:2005
Location: Sofia
Posts: 18,517
this èìà èñòèíñêè ñìèñúë, ñàìî êîãàòî èìà ëîêàëíà ïðîìåíëèâà ñúñ ñúùîòî èìå, êîåòî íå å êîé çíàå êîëêî ðÿäêî ñðåùàíî.
-
8th April 2010 16:41 #12
Èçïîëçâàíåòî íà this èìà ñìèñúë çà ÷åòèìîñò íà êîä îñíîâíî.Êàêòî è êîãàòî èìàø ëîêàëíè ïðîìåíëèâè è ìåìáåðè íà êëàñà ñ åäíî è ñúùî èìå, çà äà ìîæåø äà ãè àêñåñâàø. Èëè ïðîñòî ñå ïîäñèãóðÿâàø.
Ìíîãî å óäîáíî, àêî âèäèø ñëåäíîòî íåùî :
this.MyVariable
âåäíàãà ñå óñåùàø, ÷å òîâà å ìåìáåð , à íå ëîêàëíà ïðîìåíëèâà. Äîðè òå ñïàñÿâà àêî ìèíå íÿêîé ñëåä òåá è òè ïðåïðàâè êîäà è äà ðåøè äà ñè êðúñòè ëîêàëíà ïðîìåíëèâà ÌyVariable â ìåòîäà , â êîéòî òè ãî ïîëçâàø áåç this..
Àêî ìè òðÿáâà èíòåëèñåíñ â VisualStudio çà ìåòîäè/ïðîïåðòèòà íà êëàñà , íå ïîëçâàì this , a CTRL+SPACE. Ïî-áúðçî å .




Reply With Quote

Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè