Schriftliche Unterschiede in Ruby, PHP, Java, JS

Einführung

"Ich habe die Grundlagen des Programmierens mit Ruby gelernt, also versuchen wir es beim nächsten Mal mit js!" ↓ "Ich weiß nicht was es ist, weil es durcheinander ist!"

Gibt es so eine Person?

Ich selbst habe es zu viel gestopft und es wurde zu einem Brötchen, deshalb habe ich versucht, die Unterschiede im Schreibstil auf leicht verständliche Weise zusammenzufassen. Sie müssen sich nicht an jeden erinnern, bitte lagern Sie diesen Artikel. Ich denke, Sie werden Ihr Verständnis der Objektorientierung vertiefen, schauen Sie also bitte bis zum Ende!

Zeichenausgabe

Ausgabe von Grundzeichen. Es ist schwierig, weil die Verarbeitung je nach Sprache unterschiedlich ist, aber es ist einfach, also lassen Sie es uns festhalten. Immerhin hat Java eine lange Beschreibung w

python


  #Ruby
  puts "Hallo"

python


  #PHP
  echo "Hallo";
  //Java
  System.out.println("Hallo");
  //JavaScript
  console.log("Hallo");

Variablenzuordnung

Super Basic der Programmierung, variable Zuordnung.

python


  #Ruby
  name = "Tom"

python


  #PHP
  $name = "Tom";
  //Java(Geben Sie Typen wie String und int an)
  String name = "Tom";
  //JavaScript
  let name = "Tom";

Variablenerweiterung, Zeichenfolge + Variable

Ich benutze das auch oft. Sie sind alle ähnlich, aber es gibt Unterschiede. * Die Schreibmethode ist nur ein Beispiel.

python


  #Ruby
  "mein Name ist#{name}ist."

python


  #PHP
  "mein Name ist{$name}ist."
  //Java
  "mein Name ist"+ name + "ist."
  //JavaScript(''nicht``(Zurück Zitat)Umgeben mit)
  `mein Name ist${name}ist.`

if-Anweisung

Der Vertreter der Verarbeitung ist die if-Anweisung. Beachten Sie den Unterschied in elsif.

python


  #Ruby
  if age >= 20
    #wird bearbeitet
  elsif age >= 10
    #wird bearbeitet
  else
    #wird bearbeitet
  end

python


  #PHP
  if (age>= 20){
    #wird bearbeitet
  }elseif (age >= 10){
    #wird bearbeitet
  }else{
    #wird bearbeitet
  }
  //Java & JavaScript
  if (age>= 20){
    //wird bearbeitet
  }else if (age >= 10){
    //wird bearbeitet
  }else{
    //wird bearbeitet
  }

Anordnung und wie man abruft

Ich verwende oft das Abrufen von Arrays, und es gibt je nach Sprache verschiedene Methoden zum Extrahieren nacheinander.

python


  #Ruby
  names = ["Tom","Kenta","John"]
  names[0]

python


  #PHP
  $names = array("Tom","Kenta","John");
  $names[0];
  //Java
  String names[] = {"Tom","Kenta","John"};
  names[0];
  //JavaScript
  const names = ["Tom","Kenta","John"];
  names[0];

Hash, assoziatives Array, Objekt und Abrufen

Seien Sie vorsichtig bei der Suche, da die Namen je nach Sprache unterschiedlich sind.

python


  #Ruby(Hash)
  user = {name: "Tom",age: 20}
  user[:name]

python


  #PHP(Assoziatives Array)
  $user = array("name" => "Tom","age" => 20)
  $user["name"]
  //JavaScript(Objekt)
  const user = {name: "Tom",age: 20};
  user.name

Normale Methoden und Funktionen

Dies ist der wichtige Punkt. Dieses Mal habe ich eine Add-Methode (Funktion) erstellt, die die beiden Werte summiert. Der Rückgabewert ist ebenfalls wichtig, halten Sie ihn also fest.

python


  #Ruby
  def add(a, b)
    return a + b
  end
  sum = add(5, 2)

python


  #PHP
  function add($a, $b){
    return $a + $b;
  }
  $sum = add(5, 2);
  //Java
  public static int add(int a, int b){
  //int after static gibt den Rückgabetyp an. Verwenden Sie void für Methoden ohne Rückgabewert
    return a + b; 
  }
  int sum = add(5, 2);
  //JavaScript
  const add = function(a, b){
    return a + b;
  };
  let sum = add(5,2);

  //Oder
  const add = (a, b) => {
    return a + b;
  };
  let sum = add(5,2);

  //Oder
  function add (a, b){
    return a + b;
  }
  let sum = add(5,2);

Die empfohlene Beschreibung von js unterscheidet sich je nach Version.

Klasse und Instanziierung

Der lang erwartete objektorientierte Anfang! Eine Menüklasse wird erstellt, und eine Instanz wird basierend auf dieser Klasse erstellt und der Variablen menu1 zugewiesen.

python


  #Ruby
  class Menu
    ##wird bearbeitet
  end
  menu1 = Menu.new

python


  #PHP
  class Menu{
    ##wird bearbeitet
  }
  $menu1 = new Menu();
  //Java
  class Menu{
    //wird bearbeitet
  }
  Menu menu1 = new Menu();
  //JavaScript
  class Menu{
    //wird bearbeitet
  }
  const menu1 = new Menu();

Definition von Instanzvariablen, Instanzfeldern und Eigenschaften

Das Menü enthält "Informationen" wie Name und Preis. Erklären Sie es im Voraus in der Klasse.

python


  #Ruby
  attr_accessor :name
  attr_accessor :price

python


  #PHP
  private $name;
  private $price;
  //Java
  private String name;
  private int price;
  //JavaScript
  //Keine Vordefinition erforderlich?

Zuweisung zu Instanzvariablen und Eigenschaften in der ursprünglichen Methode

Jetzt bin ich an einen Ort gekommen, den ich nicht verstehe! Die anfängliche Methode ist die Methode, die aufgerufen wird, wenn sie neu ist (die allererste). Dieses Mal wird der im neuen Argument angegebene Wert als Instanzinformation in der ursprünglichen Methode in die Variable eingegeben.

python


  #Ruby
  def initialize(name, price)
    self.name = name
    self.price = price
  end
  menu1 = Menu.new("Hamburger",300)

python


  #PHP
  public function __construct($name,$price){
    this->name = $name;
    this->price = $price;
  }
  $menu1 = new Menu("Hamburger",300);
  //Java
  //Definieren Sie eine Methode mit demselben Namen wie die Klasse in der Klasse
  Menu(String name, int price){
    this.name = name;
    this.price = price;
  }
  Menu menu1 = new Menu("Hamburger",300)
  //JavaScript
  constructor (name, price){
    this.name = name;
    this.price = price;
  }
  const menu1 = new Menu("Hamburger",300)

Instanzmethoden und Aufrufe

Na zuletzt. Die Instanz verfügt zusätzlich zu "Informationen" über "Verarbeitung". Dieses Mal, wie Sie den Prozess definieren und aufrufen. Da die aus der Menüklasse erstellte Instanz der Variablen menu1 zugeordnet ist, Die Ausgabe lautet "Dieser Hamburger kostet 300 Yen".

python


  #Ruby
  def show
    puts "Dies#{self.name}Ist#{self.price}Es ist ein Kreis"
  end
  menu1.show

python


  #PHP
  public function show(){
    echo "Dies{$this->name}Ist{$this->price}Es ist ein Kreis";
  }
  $menu1->show();
  //Java
  public void show(){
    System.out.println("Dies"+this.name+"Ist"+this.price+"Es ist ein Kreis");
  }
  menu1.show();
  //JavaScript
  show(){
    console.log(`Dies${this.name}Ist${this.price}Es ist ein Kreis`);
  }
  menu1.show();

Am Ende

Danke, dass du bis zum Ende zugesehen hast. Es kann Auslassungen und Fehler geben, aber bitte haben Sie etwas Geduld! !!

Es ist nicht so gut, flach und weit in dieser Welt zu lernen, aber ich denke, es ist gut, eine andere Sprache zu versuchen, um Ihr Wissen zu vertiefen.

Recommended Posts

Schriftliche Unterschiede in Ruby, PHP, Java, JS
Unterschiede beim Schreiben von Java-, C # - und Javascript-Klassen
Implementieren Sie die PHP-Implodierungsfunktion in Java
Fortsetzung Sprechen Sie über das Schreiben von Java mit Emacs @ 2018
Die Geschichte des Schreibens von Java in Emacs
Lesen und Schreiben von GZIP-Dateien in Java
Partisierung in Java
Rubin vertikales Schreiben
Änderungen in Java 11
[Verständnis] Unterschied zwischen Hash und Array in Ruby
Janken in Java
Fassen Sie die Unterschiede zwischen C # - und Java-Schrift zusammen
Schwer in Rubin! ??
Code schreiben Ruby
Umfangsrate in Java
Verschlüsseln / Entschlüsseln mit AES256 in PHP und Java
FizzBuzz in Java
Organisieren Sie den Unterschied im Schreibkomfort zwischen dem Java-Lambda-Ausdruck und dem Kotlin-Lambda-Ausdruck.
Was mich als Anfänger beim Schreiben von Ruby beeindruckt hat
Unterschiede im Code bei Verwendung des Längensystems in Java
Lesen Sie JSON in Java
Interpreter-Implementierung durch Java
Machen Sie einen Blackjack mit Java
Janken App in Java
Einschränkungsprogrammierung in Java
Setzen Sie Java8 in Centos7
NVL-artiger Typ in Java
Verbinden Sie Arrays in Java
"Hallo Welt" in Java
Kommentare in der Java-Quelle
Azure funktioniert in Java
Formatieren Sie XML in Java
Einfache HTML-Spezialchars in Java
Boyer-Moore-Implementierung in Java
Hallo Welt in Java
Verwenden Sie OpenCV mit Java
WebApi-Memorandum mit Java
Typbestimmung in Java
Befehle in Java ausführen (Ping)
Verschiedene Threads in Java
Von Java zu Ruby !!
Implementierung der Heap-Sortierung (in Java)
Zabbix API in Java
ASCII-Kunst in Java
Listen in Java vergleichen
POST JSON in Java
Fehler in Java ausdrücken
Ausgabedreieck in Ruby
Erstellen Sie JSON in Java
Datumsmanipulation in Java 8
Was ist neu in Java 8?
Arten von Variablen in Ruby
Verwenden Sie PreparedStatement in Java
Schneller Popcount in Ruby
Was ist neu in Java 9,10,11