🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.www
Article #408820

Re: TypeScript - jak uzyskać zmienne prywatne? Gdzie korzyści z TS?

#408820
From: Roman Tyczka
Date: Thu, 05 Sep 2019 07:50
51 lines
2629 bytes
On Wed, 4 Sep 2019 22:11:10 +0200, Marek S wrote:
> abstract class Test {
>      private _message: string;
> 
>      protected printMessage() {
>          console.log(this._message);
>      }
> 
>      protected constructor(message: string) {
>          this._message = message;
> 
>      }
> }
> 
> export default Test;
> 
> *****************************************
> 
> import Test from "./Test";
> 
> class Test2 extends Test{
>      private _message: string;
> 
>      constructor(message:string) {
>          super("dupa");
>          this._message = message;
>      }
> 
>      execute() {
>          console.log(this._message);
>          this.printMessage();
>      }
> }
> 
> let demo = new Test2("my message");
> demo.execute();
> 
> Zadeklarowałem _message jako zmienną prywatną w obu klasach i... powstał 
> konflikt! Transkompilator nie poradził sobie z tym. Oczekiwałbym 
> samoczynnej zmiany nazwy funkcji by w wyjściowym JS nie było konfliktów. 
> Zatem jak żyć? :-) To samo dotyczy metod. Te prywatne zwalczają się 
> zamiast być niezależnymi w każdej z klas.

Nie żabym się znał na TS, choć mam w planie nim się zająć, ale tak na
logikę to zastanawia mnie które _message wg Ciebie miałaby wziąć metoda
printMessage() wywołana z klasy Test2? Dla mnie to ewidentny konflikt. 


-- 
pozdrawiam
Roman Tyczka
Technical Details
Message-ID: <10aaekrsuhadf.dlg@tyczka.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.69.MISMATCH!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer04.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <qkp5ov$imf$1@news.icm.edu.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.69.MISMATCH!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer04.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: Roman Tyczka <noemail@because.no>
Subject: Re: TypeScript - jak uzyskać zmienne prywatne?
 Gdzie korzyści z TS?
Newsgroups: pl.comp.www
User-Agent: 40tude_Dialog/2.0.15.84
MIME-Version: 1.0
Sender: romek@tyczka.no.found
References: <qkp5ov$imf$1@news.icm.edu.pl>
Date: Thu, 5 Sep 2019 09:50:15 +0200
Message-ID: <10aaekrsuhadf.dlg@tyczka.com>
Lines: 51
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 94.75.90.137
X-Trace: 1567669815 unt-rea-b-01.news.neostrada.pl 31100 94.75.90.137:8158
X-Complaints-To: abuse@news.neostrada.pl
X-Received-Bytes: 2333
X-Received-Body-CRC: 525995973
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit