Programos kodas

Puslapis atnaujintas :
Puslapio sukūrimo data :

Pažvelkime į veikiančios programos kodą. Aš naudoju C# kaip programavimo kalbą, bet paaiškinsiu ją taip, lyg tam tikru mastu žinočiau C#. Jei nesate tikri, yra daug knygų apie C# programavimą, kurias galite skaityti ir studijuoti. Yra vietų, kur tai gana daug paaiškinama kitose svetainėse, todėl, jei neturite pinigų, gerai ieškoti tokios vietos.

Pirma, atidarykime failą "Program .cs", kuris taip pat yra programos pradinis taškas. Beje, C# kodo failų plėtinys yra ". cs". Atidarykite "Solution Explorer" kūrimo ekrano dešinėje (priklausomai nuo vartotojo). Kai kuriais atvejais langas jau yra prisegtas dešinėje. Iš ten dukart spustelėkite "Program .cs".

ソリューション エクスプローラー

Manau, kad šaltinio rengyklė yra atvira.

ソースエディタ

Geriau, kad kiekvienas iš jūsų mokytųsi C#, bet kol kas norėčiau trumpai paaiškinti kodą šiuose patarimuose.


using System;
using System.Collections.Generic;
using System.Windows.Forms;

Klasės visada turėtų būti parašytos kažkur vardų erdvėje. Pavyzdžiui, klasė "Failas", kurioje nagrinėjami failai, yra "Sistemos" vardų srityje ir "IO" vardų srityje. Paprastai, norėdami naudoti klasę "Failas", turite parašyti visas vardų sritis ir galiausiai klasės pavadinimą kaip "System.IO.File".

System.IO.File f;

Tačiau jei užregistruosite jį iš anksto naudodami teiginį "naudojant", galėsite praleisti vardų sritį, kai iš tikrųjų naudosite klasę "Failas".

using System.IO;
File f;

namespace Sample

Tai vadinama vardų erdve. Jame yra parašyti visi vykdymo procesoriai. Vardų srities pavadinimas yra toks pat kaip ir jūsų sukurto projekto pavadinimo. Jei jums tai nepatinka, vėliau galėsite jį pakeisti.


static class Program

Klasės pavadinimas. Pavadinimas į dešinę nuo "klasės" yra klasės pavadinimas. Iš esmės lengviau suprasti, ar failo vardas ir klasės pavadinimas yra kartu. "Statinis" į kairę nuo "klasės" paprastai nėra būtinas, tačiau šiai "Programos" klasei turėtumėte galvoti apie tai kaip apie būdą jį įdėti.


/// <summary>
/// アプリケーションのメイン エントリ ポイントです。
/// </summary>
[STAThread]
static void Main()
{
  Application.EnableVisualStyles();
  Application.SetCompatibleTextRenderingDefault(false);
  Application.Run(new Form1());
}

Čia iš tikrųjų prasideda procesas. Trys populiariausios eilutės yra komentarai, todėl ignoruokite juos. Tai neturi nieko bendra su faktiniu apdorojimu. "[STAThread]" iš tikrųjų gali būti nereikalingas, bet jei to nesuprantate, saugiau jį užsidėti tokį, koks jis yra. "Statinis tuščias pagrindinis()" kitoje eilutėje yra metodo vadovas. Palikite tai taip, kaip yra, nebent atsitiks kažkas blogo. Programa vykdoma pagal šį metodą.

「Application.EnableVisualStyles();」 aprašomi valdikliai, kuriuos norite įdėti į formą, jei norite, kad jie būtų XP stiliaus. Pašalinkite šią eilutę tik tuo atveju, jei norite, kad ji atrodytų kaip senas valdiklis. Iš esmės palikite taip. 「Application.SetCompatibleTextRenderingDefault(false);」 yra susijęs su valdiklio teksto piešiniu, tačiau iš esmės jis gali būti paliktas toks, koks yra. 「Application.Run(nauja forma1());」 , kad iš tikrųjų paleistumėte programą. Čia mes vykdysime formos klasę "Form1" kaip aukščiausio lygio langą. "Form1" yra lango klasė, anksčiau rodoma "Debug Execution".


Pažvelkime į tą "Form1" klasę. "Solution Explorer" dešiniuoju pelės mygtuku spustelėkite failą "Form1.cs" ir parodykite jį "Kodo rodinyje".

Form1 コードの表示

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Sample
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
  }
}

Tai iš esmės yra visas kodas, parašytas klasėje "Form1". Paaiškinamos tik tos dalys, kurios skiriasi nuo "Programos" klasės.


public partial class Form1 : Form

Apsvarstykite, kad "viešas" yra kažkas, ką visada užsidedate kurdami klasę (kai kuriais atvejais tai gali pasikeisti). Užsiėmimai iš esmės yra "vieši", todėl aš juos išlaikysiu. "dalinis" naudojamas klasei suskaidyti į kelis failus. Tai taip pat reikalinga klasėms, kurios kuria formas. Pabaigoje esanti "Forma" yra klasė, priklausanti vardų sričiai "System.Windows.Forms". Aukščiau pateiktame kode "naudojant System.Windows.Forms"; Jis parašytas kaip "Forma" trumpai. Jei po klasės pavadinimo "Form1" pridėsite ":Forma", tai reiškia "Form1 klasė, paveldėta iš formos klasės". Atminkite, kad klasė, kurią kuriate formą, iš esmės yra tai, kaip ji atrodo.


public Form1()
{
  InitializeComponent();
}

Tai metodas, tačiau jis vadinamas "konstruktoriumi". Metodo pavadinimas visada sutampa su klasės pavadinimu. Konstruktorius visada vykdomas iškart po klasės sukūrimo. Aukščiau esančioje "Programos" klasėje "Application.Run(nauja Form1());" Mes naudojame "naują" operatorių, kad sukurtume "Form1" klasę. Todėl šis konstruktorius visada vykdomas. Dabar konstruktoriaus viduje yra įvykdytas "InitializeComponent()" metodas. "Form1" klasės kodas yra vienintelis, kurį minėjau, tačiau klasė iš tikrųjų yra padalinta į du failus. Sprendimų naršyklėje šalia failo "Form1.cs" yra mygtukas "+", todėl pabandykite jį paspausti.

Form1 の別のファイル

Išėjo failas "Form1.Designer .cs". Tiesą sakant, šiame faile aprašytas metodo "InitializeComponent" turinys.

Visų pirma, koks apdorojimas atliekamas "InitializeComponent" metodu, yra tas, kad "Form1" klasės "dizainerio" ekrane esantis duomenų rinkinys pakeičiamas programos faktiškai apdorotu turiniu. Taigi, jei pakeisite ypatybes ir kt. ekrane "Dizaineris", failo "Form1.Designer .cs" kodas bus perrašytas realiuoju laiku. Kitaip tariant, klasė yra padalinta į du failus, kad programuotojui nereikėtų tiesiogiai redaguoti kodo. Todėl jums nereikia žiūrėti į išsamų kodą, todėl galite labai glaustai apibendrinti tokiu būdu redaguojamo failo kodą. Tai unikalus C# 2.0 pranašumas, kuris, deja, nesiūlo šios funkcijos. Tai yra viena iš priežasčių, kodėl aš einu į C# 2.0. (Beje, C# 1.0 yra standartinis "Visual Studio 2002" ir "2003", o C# 2.0 yra pagrįstas "Visual Studio 2005".)

Jei norite pamatyti "Form1.Designer .cs" turinį, galite dukart spustelėti, kad jį pamatytumėte. Manau, kad tai bus stebėtinai naudinga. Kai kuriais atvejais gali tekti tai redaguoti, todėl verta pasidomėti.


Dabar, kai baigėme aiškinti kodą iškart po to, kai buvo sukurtas projektas. Šiek tiek pakeiskime nustatymus.

Formos pavadinimas (klasė) sukūrus projektą visada yra "Form1". Manau, kad turbūt yra daugiau nei keli žmonės, kuriems tai nepatinka, todėl pakeiskime pavadinimą. Kadangi tai bus pagrindinis langas, išbandykime jį kaip "MainForm".

Pirmiausia "Solution Explorer" dešiniuoju pelės mygtuku spustelėkite "Form1.cs" ir spustelėkite "Pervardyti".

名前の変更

Kadangi jį galima pervadinti, jis bus perrašytas kaip "MainForm .cs".

MainForm

Rodomas toks dialogo langas, koks yra žemiau, todėl paspauskite mygtuką "Taip". (Jis gali neišeiti.) Tokiu atveju turite rankiniu būdu jį pakeisti refaktoriumi ir pan.)

名前変更確認

Tada viskas, kas susiję su "Form1", bus pervadinta į "MainForm". Taip pat keisis visų klasių pavadinimai. Tai taip paprasta, ar ne?

全て名前変更