ג'אווה (שפת תכנות)

המונח "Java" מפנה לכאן. אם הכוונה למשמעות אחרת, ראו ג'אווה (פירושונים).
ג'אווה
Java
פרדיגמות תכנות מונחה־עצמים, תכנות מובנה, תכנות אימפרטיבי
תאריך השקה 1995
מתכנן ג'יימס גוסלינג
מפתח סאן מיקרוסיסטמס (ב-2010 נרכשה על ידי אורקל)
טיפוסיות סטטית, חזקה, בטוחה, מפורשת
ניבים Generic Java, Pizza
הושפעה על ידי C++, UCSD Pascal, סי שארפ, Mesa, boxing, Java annotation, variadic function, ניקלאוס וירת, Patrick Naughton, אוברון, עדה, C, אייפל, Objective-C, Smalltalk, אובג'קט פסקל, foreach loop, בפסקה זו 3 רשומות נוספות שטרם תורגמו עריכת הנתון בוויקינתונים
רישיון הרישיון הציבורי הכללי של גנו עריכת הנתון בוויקינתונים
סיומת java, .class.
https://www.java.com/en/
לעריכה בוויקינתונים שמשמש מקור לחלק מהמידע בתבנית

ג'אווה (באנגלית: Java) היא שפת תכנות מונחית עצמים אשר פותחה בחברת סאן מיקרוסיסטמס (כיום חברת־בת של אורקל) על ידי צוות בראשות ג'יימס גוסלינג בשנת 1991, והיא אחת משפות התכנות הנפוצות ביותר הנמצאות בשימוש כיום.[1] השפה הוצגה לראשונה בשנת 1995, והיא מהווה את אחד מרכיבי הליבה של פלטפורמת התוכנה ג'אווה.

התחביר של השפה מבוסס במידה רבה על התחביר של ++C, אך כולל הרחבות רבות במטרה לאפשר תמיכה מובנית בתהליכונים, בינלאומיות, אבטחה ועבודה בסביבת האינטרנט ותכונות נוספות. לרוב עוברות תוכניות ג'אווה הידור ל־Java bytecode, שפת ביניים דמוית שפת מכונה, שאותה מריצה מכונה וירטואלית (Java Virtual Machine ;JVM). הודות לכך התוכנית יכולה לרוץ על כל מחשב ועל כל מערכת הפעלה המריצים JVM, החל מטלפונים סלולריים ועד למחשבי-על.

בשנת 1996 הוקם לראשונה הכנס "JavaOne", כנס שנתי המאגד אלפי משתמשי ומפתחי השפה הדנים בפיתוחה ובעדכונים הטכנולוגיים בה.

נכון ליולי 2022, ג'אווה נחשבת לשפת התכנות השנייה ברמת הפופולריות בעולם, גם בקרב מהנדסי תוכנה מקצועיים וגם על פי מדידת Google Trends.[2][3]

היסטוריה

השפה פותחה לראשונה כמיזם פנים בתוך חברת סאן מיקרוסיסטמס, על ידי ג'יימס גוסלינג, ארכיטקט הפרויקט, שהחל בדצמבר 1990 בשם "פרויקט החמקן" (Stealth Project), ושמו הוחלף לאחר זמן מה ל"פרויקט הירוק" (Green Project). מטרתו המקורית של הפרויקט הייתה מערכות משובצות מחשב (embedded systems) עבור מכשירים חכמים (smart appliances) שונים, כגון מחשב כף יד (PDA) ואפילו תנור או מקרר חכם, תחום שסאן צפתה כי יתפתח מאוד מבחינה עסקית.

צוות הפרויקט פיתח שפה חדשה משום ששפות קיימות כגון ++C שנשקלה בתחילה, היו מורכבות מדי וצרכו משאבים גדולים מדי עבור מערכות פשוטות משובצות מחשב. אמנם, אחד מהנסיונות הראשונים של הצוות היה כתיבת גרסה שונה של ++C שתיקרא "--++++C"[דרוש מקור], אך במהרה החליט הצוות לכתוב שפה חדשה המתבססת על מספר עקרונות ותחביר דומה ל־++C. השם שהוצע בתחילה לשפה היה Oak (אלון), על שמו של עץ שגדל מחוץ לחלון של גוסלינג.

מבחינת תשתית השפה, הרעיון הבסיסי היה ליצור "מְפָרֵשׁ" (Interpreter) שקורא את קוד השפה ומבצע אותה. משמע, כי לכל סביבה יהיה מפרש משלה וכך ניתן לכתוב קוד מקור אחיד עבור סביבות שונות. בסוף 1992 סאן הקימה חברת בת בשם FirstPerson שייעודה לפתח ולמצוא שימושיים עסקיים לשפה החדשה.

הכיוון אותו בחרה FirstPerson היה ממירים (Set-Top Boxes) לחברות כבלים, שיוכלו להריץ יישומים עבור טלוויזיה אינטראקטיבית. לאחר שני כישלונות במכרזים גדולים (חברות הכבלים חששו ממתן חופש גדול מדי בידי משתמש הקצה) נסגרה החברה והצוות חזר לסאן.[4]

ביולי 1994, לאחר שמספר חברים נוספים הצטרפו לצוות, וביניהם אריק שמידט, החליט הצוות על כיוון עסקי שלישי, חדש, והוא ה־Web. הם צפו שהמדיום החדש יהיה זקוק לשפה שבעזרתה יוכל להריץ בתחנות הקצה יישומים אינטראקטיביים ללא תלות במערכת ההפעלה או המעבד, ועל מחשבים חלשים יחסית.

באותה שנה, בפגישה בבית קפה בהשתתפות מספר חברי צוות, הוחלט על שינוי השם מאחר ש־Oak היה רשום כסימן רשום על ידי יצרן אחר. מקור השם ג'אווה אינו ברור.[5] יש טוענים שאלו ראשי תיבות של חברי הצוות שנכחו בפגישה: James Gosling, Arthur Van Hoff, and Andy Bechtolsheim גרסה אחרת טוענת כי השם ניתן על שם הקפה שהוגש באותה פגישה (קפה שמקורו בג'אווה שבאינדונזיה). חיזוק לגרסה האחרונה ניתן למצוא בכך שארבעת הבתים הראשונים (ראה מספר קסם) של כל מחלקה בג'אווה הם, בהקסדצימל: 0xCAFEBABE... (ז'רגון כתיבת מילים באמצעות התווים המותרים בפורמט הקסדצימלי מוכר בשם Hexspeak (אנ')). בהלצה נטען כי אלו ראשי תיבות של Just Another Vague Acronym ("עוד ראשי תיבות עמומים").

בשנת 1995 הטכנולוגיה הודגמה בכנס על דפדפן נטסקייפ על ידי סיבוב גוף תלת־ממדי בעזרת תוכנת קצה בדפדפן המריצה ג'אווה וידועה בימינו כיישומון (Applet – יישום קטן אשר רץ בתוך הדפדפן). הטכנולוגיה התקבלה בהתלהבות. היישומונים התפתחו זמן מה עד שה־Flash התחיל להחליף את מקומם בזכות יכולת ההנפשה שלו.

גרסה 5.0, שהושקה בספטמבר 2004 הייתה ממוספרת גם 1.5, כשלב מעבר ממספור גרסאות בקפיצות של עשירית (למשל, מ־1.3 ל־1.4) למספור בקפיצות של מספרים שלמים. השינוי בשיטת המספור ציין את קפיצת המדרגה בגרסה זו שכללה שינויים רבים (ובפרט Generics). כמו כן השינוי בשיטת המספור נובע, ככל הנראה, גם מן התחרות עם שפת #C, שהמיספור שלה קופץ במספרים שלמים.

בנובמבר 2006, הכריזה חברת סאן כי ג'אווה תוצע גם תחת רישוי GPL v2. ההכרזה כוללת את השפה והמהדר, הספריות, סביבת הריצה (JVM) והכלים הנלווים. בכך הפכה ג'אווה לשפה וסביבה פתוחה וחופשית.[6] במאי 2007, הודיעה סאן כי סיימה את תהליך העברת ג'אווה לקוד פתוח.[7]

עקרונות

תוכנית Hello world בשפת ג'אווה שנכתבה ובוצעה
בסביבת הפיתוח המשולבת Eclipse

ג'אווה היא שפה בעלת טיפוסיות סטטית חזקה, כלומר לכל ביטוי בשפה מתאים טיפוס יחיד, תקינות ביטויים נבדקת בזמן ההידור, במידת האפשר. כאשר אין זה אפשרי, תתבצע בדיקה בזמן ריצה.

ג'אווה תומכת בתכנות מונחה עצמים. עם זאת ג'אווה עדיין כוללת, מטעמי יעילות, גם "טיפוסים פרימיטיביים", שאינם אובייקטים. משום כך (ומסיבות נוספות) אינה נחשבת שפה מונחית עצמים "טהורה" כמו Smalltalk או Ruby. עם זאת, לכל טיפוס פרימיטיבי בג'אווה יש מחלקה עוטפת, אליה וממנה מתבצעת המרה אוטומטית (Boxing). למשל, לטיפוס הפרימיטיבי int קיימת מחלקה עוטפת Integer.

שפת ג'אווה כוללת גם ניהול זיכרון אוטומטי. המתכנת פטור מן ההכרח לשחרר זיכרון המוקצה לאובייקט ברגע שאין עוד משתנים המצביעים עליו. במקום זאת, סביבת זמן הריצה כוללת מנגנון "איסוף זבל", המבצע זאת אוטומטית.

ג'אווה מאפשרת ירושה יחידה בלבד, וזאת על מנת למנוע בעיות דו־משמעות הנוצרות מירושת יהלום. כדי לאפשר גמישות דומה לזו של ירושה מרובה, קיים בג'אווה מנגנון ממשק (interface) המגדיר רשימה של מתודות, המהווה חוזה עם המתכנת. כך כל מחלקה יכולה להרחיב (extends) לכל היותר מחלקה אחת, ולממש (implements) מספר בלתי מוגבל של ממשקים. על המחלקה לממש במפורש כל מתודה בכל ממשק כזה, וכך לא קיימת בעיה של כפל משמעות.

בגרסה 5.0 נוספו מספר הרחבות חשובות לשפה, ביניהן תכנות גנרי (Generics), מספר משתנה של פרמטרים לפונקציה וטיפוסי מניה (Enums).

בגרסה 7 של השפה נוספה תמיכה בהקצאת משאבים תחומה־לקסיקלית – בלוקים של try-with-resources.[8]

בגרסה 8 של השפה נוספה תמיכה נרחבת וישירה בטכניקות של תכנות פונקציונלי; בין היתר נוסף תחביר עבור פונקציות למבדא, נוסף תחביר להעברה של מתודות כפרמטר, נוספו ממשקים עבור פונקציות, נוסף טיפוס נתונים מובנה Stream התומך בפונקציות מסדר גבוה ובפעולות כגון map או collect ונוספה מתודה forEach לטיפוס הנתונים Iterator.

בגרסה 9 של השפה נוספה האפשרות למימוש ברירת-מחדל עבור מתודות בממשקים, נוספו מתודות ייצור סטטיות עבור אוספים כגון List, ונוספו מתודות שונות ל-Option ול Stream.

ג'אווה כשפה מוּנְחֵית עצמים חלקית

אחד מעקרונותיה החשובים של שפת java, הוא תמיכה בפרדיגמת תכנות מונחה העצמים שלה.

השפה לא מונחית עצמים "טהורה" כיוון שניתן להשתמש בה בטיפוסי נתונים פרימטיביים (כמו int,float,char וכו'..).

חמישה עקרונות חשובים של תכנות מונחה עצמים בjava הם

1. ירושה

דוגמת קוד:

// Parent class
class Animal {
  public void voice() {
    System.out.println("I am animal");
  }
    public void scream() {
    System.out.println("boo!");
    }
  }

// class child, inherit from Animal
class Dog extends Animal {
  // same method like Animal
  public void voice() {
    System.out.println(" I am Dog!");
  }
}

class Main {
  public static void main(String[] args) {
    // create an object of the parent class that will point the child class!
    Animal labrador = new Dog();
    labrador.voice();
    labrador.scream(); // also has the method of his parent class
     }
}
// output: I am Dog! boo!


2. כימוס

דוגמת קוד:

// Java program to demonstrate encapsulation
class EncapsulatedCar {
    // private variables declared these can only be accessed by public methods of class
    private String companyName;
    private int year;
    private int price;

    // getters methods to access private variables
    public int getYear() { return year; }
    public String getCompanyName() { return companyName; }
    public int getPrice() { return price; }

    // setters methods to access and change private variables
    public void setYear(int newYear) { year = newYear; }
    public void setCompanyName(String newCompanyName) {
        companyName = newCompanyName;  }
    public void setNewPrice(int newPrice) { price = newPrice; }
}

public class Car {
    public static void main(String[] args)
    {
        EncapsulatedCar car = new EncapsulatedCar();

        // setting values for the variables
        car.setCompanyName("Tesla");
        car.setNewPrice(200000);
        car.setYear(2022);

        // Displaying values of the variables
        System.out.println("car company: " + car.getCompanyName());
        System.out.println("year " + car.getYear());
        System.out.println("price of the car: " + car.getPrice() +"₪");

        // Direct access to the variables is not possible due to encapsulation
        // output: car company: Tesla
        //         year 2022
        //         price of the car: 200000₪
    }
}

3. פולימורפיזם דוגמת קוד:

class Animal {
  public void animalVoice() {
    System.out.println("Animals make various of voices..");
  }
}

class Cat extends Animal {
  public void animalVoice() {
    System.out.println("The cat howl: Meow Meow!");
  }
}

class Dog extends Animal {
  public void animalVoice() {
    System.out.println("The dog bark: Woof Woof!");
  }
}

class Main {
  public static void main(String[] args) {
    Animal myAnimal = new Animal();  // Create a Animal object
    Animal mitzi = new Cat();  // Create a Cat object
    Animal puppy = new Dog();  // Create a Dog object
    // We have now *two* different objects derived from the same super class!
    myAnimal.animalVoice();
    mitzi.animalVoice();
    puppy.animalVoice();
  }
}
// output: Animals make various of voices..
//         The cat howl: Meow Meow!
//         The dog bark: Woof Woof!

4. אבסטרקציה

5. ממשק

יתרונותיה של java כשפה מונחית עצמים
  1. הופך אותה למהירה ואינטואיטיבית יותר, כיוון שתכנות זה מדמה את העולם האמיתי.
  2. מאפשר מבנה נקי, פשוט וברור לתוכניות.
  3. מפחית שימוש חוזר בקוד, הקוד קל יותר לתחזוקה, לשינוי ולניפוי שגיאות.

ביצועים

בראשית דרכה סבלה ג'אווה מביצועים גרועים, היות שמנועי זמן הריצה בוססו על מפרש בלבד. אולם, עם התפתחות השפה, הוחל שימוש בטכניקה הקרויה JIT‏ – Just In Time, אשר בבסיסה עמד העיקרון של הידור דינמי של קוד המכונה הווירטואלי לקוד המכונה הספציפי בזמן הריצה. על ידי כך מתקבלים ביצועים טובים יותר, ותאורטית אף גבוהים יותר משפת ++C במצבים מסוימים (היות שההידור מתבצע תוך כדי ריצת התוכנה, יש למהדר ידע מדויק יותר על ריצת התוכנה, מה שמסייע לביצוע אופטימיזציות טובות יותר לקוד).

גישה אחרת לנושא הביצועים מפרידה את עיקרון המכונה הווירטואלית מהשפה, ומהדרת את קוד המקור ישירות לקוד מכונה ספציפי, שרץ ככל תוכנה אחרת במערכת. עם זאת, גם בהידור כזה ישנו חיסרון לעומת שפות כמו ++C שעוצבו במיוחד לאפשר ריצה מהירה. לדוגמה, כל קריאה לשיטה בג'אווה כוללת חיפוש בזמן ריצה של השיטה המתאימה, בניגוד לשפת ++C בה קריאה לשיטה שאינה מוגדרת כוירטואלית שקולה לקריאה לפונקציה רגילה. בנוסף לכך ג'אווה נודעת בצריכת זיכרון גבוהה בהשוואה לקוד דומה שנכתב בשפה כגון שפת ++C, זאת עקב טעינה של ספריות ניהול של המכונה הווירטואלית. צריכת זיכרון גבוהה זו באה לידי ביטוי בעיקר במערכות הפעלה מסוג UNIX.

דוגמה לתוכנית בשפת ג'אווה

התוכנית המופיעה להלן כתובה בשפת ג'אווה, והיא בודקת האם מספר שהועבר אליה הוא מספר ראשוני. הסימן "//" מציין שהטקסט שמימינו אינו חלק מקוד התוכנית, אלא הוא הערה שמטרתה להסביר את התוכנית למתכנת הקורא אותה. התוכנית מחולקת לשתי פונקציות, האחת בודקת האם מספר נתון הוא ראשוני, והשנייה מטפלת בדיאלוג עם המשתמש: קבלת המספר לבדיקה (קלט) והצגת תוצאות הבדיקה (פלט).

import java.util.Scanner;

public class JavaProgram
{
 public static int getFactor (int num)
 {
  double sqrt = Math.sqrt(num);
  // try to find a factor that is not 1.
  for (int i = 2; i <= sqrt; i++) {
                        if (num % i == 0) // is num divisible by i?
                                return i;
  }
  return 1; // num is a prime.
 } // End of getFactor function.

 public static String communicate (int num)
 { // communicate with the user.
  if (num <= 0)// is it a valid input?
              return "The checked number should be positive";
  int factor = getFactor(num);
  if (factor == 1)
   return num + " is a prime";
  else
   return num + " is not a prime, " + num + " = " + num/factor + " × " + factor;
 } // End of communication function

 public static void main (String [] args)
 {
  Scanner in = new Scanner(System.in);
  System.out.println(communicate(in.nextInt()));
 }
}

גרסאות

סאן הגדירה מספר גרסאות לג'אווה המיועדות לסביבות שונות:

  • Java Card
  • Java Platform, Standard Edition ‏(Java SE): סביבת הפיתוח של ג'אווה הכוללת JVM, מהדר וכלי עזר
  • Java Platform, Enterprise Edition ‏(J2EE)
  • Java Platform, Micro Edition ‏(J2ME): גרסה למכשירים קטנים וסלולריים

J2EE

ערך מורחב – Java Enterprise Edition

עם התרבות השימוש באינטרנט, התברר שיש צורך ביצירת תשתית של תוכנת שרת על ידי שרת התומך בג'אווה בשיתוף של משאבים כמו בסיסי נתונים ומבני נתונים, בתמיכה בשרתי HTTP ובדפים דינמיים. כך פותחה JSP, טכנולוגיה של ג'אווה לבניית אתרי Web דינמיים. כך נוצר אוסף הכלים של ה־Enterprise Edition הנקרא בקיצור J2EE. לאחר מכן שונה השם ל-J2E.

שרת יישומים זה הצליח עד כדי כך שמיקרוסופט מנסה ב־NET. לתת פתרון דומה. יישומים כבדים באמת כמו SAP עזבו את העולם הסגור של Windows ובחרו לעבוד עם J2EE. ולמעשה רוב הקוד והפיתוח בג'אווה בימינו מבוסס על תשתיות אלו. חברות כמו BEA פיתחו שרת לתשתיות אלו ובמקביל קבוצת JBoss פיתחה שרת המבוסס על קוד פתוח.

J2ME

ערך מורחב – Java ME

תכונה זו של ניתוק ממערכת ההפעלה על ידי כתיבת JVM החוצצת בין התוכנה למערכת ההפעלה אומץ לתחום אחר והוא הטלפונים החכמים כחלק מקבוצה של התקנים משובצי מחשב (Embedded Devices). גם בתחום זה ריבוי המכשירים, מערכות ההפעלה, וסוגי המעבדים השונים נתנו יתרון לפיתוח מבוסס JVM. בתחום זה מספקת Sun את J2ME‏ (Java 2 Mobile Edition), שהיא גרסה קלת־משקל וקומפקטית למכשירי טלפון סלולרי ומחשבי כף יד.

ראו גם

קישורים חיצוניים

הערות שוליים


Read other articles:

Ancien hôtel de villede Mont-de-MarsanFaçade de l'ancien hôtel de ville, reconvertien résidence « La Romancière » en 2018PrésentationDestination initiale Hôtel de villeDestination actuelle RésidenceConstruction 1845Inauguration 1846LocalisationPays FranceRégion Nouvelle-AquitaineDépartement LandesCommune Mont-de-MarsanAdresse 4, place du Général de GaulleCoordonnées 43° 53′ 31″ N, 0° 30′ 08″ Omodifier - modifier le code - modifi...

 

Sultan Alâeddin Kayqubad IPatung Kayqubad I di AlanyaSultan Seljuk RumBerkuasa1220–1237PendahuluKaykaus IPenerusKaykhusraw IIInformasi pribadiKelahiran1190KonyaKematian1237 – 1190; umur -48–-47 tahunKayseriPemakamanMasjid Alâeddin, KonyaWangsaDinasti seljukNama lengkapAlā ad-Dīn Kayqubād bin Kaykhusraw bin Kiliç ArsalanAyahKaykhusraw IIbuRaziya KhatunPasanganMahpari Hunat KhatunMalika Adila KhatunIsmat al-dunya wa'l-dinAnakGıyaseddin Kaykhusraw IIRukn al-Din Kiliç A...

 

العلاقات الشمال مقدونية الغواتيمالية شمال مقدونيا غواتيمالا   شمال مقدونيا   غواتيمالا تعديل مصدري - تعديل   العلاقات الشمال مقدونية الغواتيمالية هي العلاقات الثنائية التي تجمع بين شمال مقدونيا وغواتيمالا.[1][2][3][4][5] مقارنة بين البلدين هذ...

Inggris Tenggara region di InggrisITL 1 statistical regions of England (en) South East England (en) Tempat categoria:Articles mancats de coordenades Negara berdaulatInggrisNegara konstituen di Britania RayaInggris NegaraInggris Pembagian administratifKent East Sussex West Sussex Buckinghamshire Berkshire Hampshire Oxfordshire Isle of Wight Surrey PendudukTotal9.180.135  (2019 )GeografiLuas wilayah19.096 km² [convert: unit tak dikenal]Berbatasan denganLondon (en) Inggris Barat Daya ...

 

Duta Besar Indonesia untuk LebanonLambang Kementerian Luar Negeri Republik IndonesiaPetahanaHajriyanto Y. Thoharisejak 7 Januari 2019KantorBeirut, LebanonDitunjuk olehPresiden IndonesiaDibentuk1995[1]Situs webkemlu.go.id/beirut/id Berikut adalah daftar diplomat Indonesia yang pernah menjabat Duta Besar Republik Indonesia untuk Lebanon: No. Foto Nama Mulai menjabat Selesai menjabat Diangkat oleh Ref. Dalindra Aman 1996   Soeharto [2] Syam Soemanagara 2000 2002   ...

 

Jembatan Pelabuhan Sydney Jembatan Pelabuhan Sydney di malam Jembatan Pelabuhan Sydney adalah jalur utama untuk menyeberangi Pelabuhan Sydney yang menghubungkan distrik pusat bisnis Sydney (Sydney CBD) dengan wilayah utara Sydney (North Sydney). Di atasnya terdapat jalur kereta api, kendaraan bermotor, sepeda, dan trotoar. Bersamaan dengan Gedung Opera Sydney, Jembatan Sydney Harbour adalah ikon bagi kota Sydney sekaligus Australia. Warga setempat menamai jembatan ini sebagai The Coathanger&#...

Not to be confused with The League of Extraordinary Gentlemen. 2006 filmA League of Ordinary GentlemenDirected byChristopher Browne and Alex BrowneWritten byChristopher BrowneProduced byChristopher BrowneStarringWayne WebbPete WeberWalter Ray Williams Jr.Chris BarnesSteve MillerCinematographyKen SengEdited byKurt EngfehrDavid S. TungMusic byGary MeisterDistributed byMagnolia Home EntertainmentRelease dateMarch 21, 2006Running time93 min.LanguageEnglish A League of Ordinary Gentlemen is a docu...

 

Town in Victoria, AustraliaDaylesfordVictoriaDaylesford as seen from Wombat HillDaylesfordCoordinates37°21′0″S 144°09′0″E / 37.35000°S 144.15000°E / -37.35000; 144.15000Population2,781 (2021 census)[1] • Density76.82/km2 (198.97/sq mi)Established1852Postcode(s)3460Elevation616 m (2,021 ft)Area36.2 km2 (14.0 sq mi)Time zoneAEST (UTC+10) • Summer (DST)AEDT (UTC+11)Location 114 km (71 mi) NW o...

 

История Еврейской автономной области — события создания, развития и существования Еврейской автономной области СССР и впоследствии Российской Федерации. Освоение Приамурья русскими началось в середине XVII века. После Октябрьской революции с конца 1920-х годов началас...

Mexican football club Not to be confused with Bravos de Nuevo Laredo (Tercera División). This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. Please help improve this article by introducing more precise citations. (October 2021) (Learn how and when to remove this message)Football clubBravos de Nuevo LaredoFull nameBravos de Nuevo LaredoFoundedJanuary 10, 2004; 20 years ago (2004-01-...

 

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Desember 2022. Drs. Nazif Lubuk (3 April 1942 – 23 Desember 2014) merupakan birokrat Indonesia yang pernah menjabat mantan Kepala Biro Humas Sekretariat Daerah Provinsi Sumatera Barat.[1] Riwayat Hidup Riwayat Karir Karir pertamanya adalah me...

 

American sports announcer Brandon GaudinBorn (1983-12-18) December 18, 1983 (age 40)Evansville, IndianaAlma materButler UniversitySports commentary careerGenrePlay-by-playSport(s)College Baseball, College Basketball, College Football, MLB, NFL, NBAEmployerBig Ten NetworkFox SportsWestwood OneAtlanta Braves Brandon Gaudin (born December 18, 1983) is an American television broadcaster for Bally Sports South and Bally Sports Southeast's coverage of the Atlanta Braves baseball.[1 ...

Ledakan La CoubreBagian dari Kelanjutan Revolusi KubaFoto diambil pada 5 Maret 1960, di Havana, Kuba, pada pawai peringatan bagi para korban ledakan La Coubre. Dari kiri ke kanan: Fidel Castro, Osvaldo Dorticós Torrado, Che Guevara, Augusto Martínez Sánchez, Antonio Núñez Jiménez, William Alexander Morgan and Eloy Gutiérrez Menoyo, berbaris ke Pemakaman Colón.LokasiHavana, KubaSebabSabotaseJumlah korbanKorban jiwa27 Freighter Prancis La Coubre meledak di pelabuhan Havana, Kuba, pada 4...

 

Guerra russo-persiana (1804-1813)parte delle guerre russo-persianeIl dipinto raffigura un episodio della guerra, quando 493 russi respinsero per due settimane gli attacchi di 20.000 persiani; nella scena in questione i russi crearono un ponte umano, in maniera tale da poter trasportare due cannoni sopra i loro corpi.Data1804 - 1813 LuogoTranscaucasiaIran settentrionale EsitoVittoria russa;Trattato di Gulistan Schieramenti Impero russo Impero persiano ComandantiAlessandro I di RussiaIvan Gudov...

 

Questa voce o sezione sull'argomento veicoli militari non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. FV 4034 Challenger 2Challenger 2 durante un'esercitazioneDescrizioneTipoCarro armato da combattimento Equipaggio4 (capocarro, pilota, tiratore, caricatore) Data entrata in servizio1998 Utilizzatore p...

У Вікіпедії є статті про інші значення цього терміна: Голодомор (термін). Голодомори в УкраїніЧастина геноциду українцівДіти, які померли від голоду у морзі, Миколаївський район, 1922 рікМісце атаки УкраїнаМета атакиГеноцидДата1920-ті, 1930-ті та 1940-віСпосіб атакиголодЗаги�...

 

This is an archive of past discussions with Matthew hk. Do not edit the contents of this page. If you wish to start a new discussion or revive an old one, please do so on the current talk page.  < Archive 19    Archive 20    Archive 21 > All Pages:  1 -  2 -  3 -  4 -  5 -  6 -  7 -  8 -  9 -  10 -  11 -  12 -  13 -  14 -  15 -  16 -  17 -  18 -  19 -  20 -  21 -  22 -  23 -  24 -  25 -  26 -  27 -  28 -  29 -  30 -  31 - ...

 

2016 Mexican filmEl Americano: The MovieMexican theatrical release posterDirected byRicardo ArnaizMike KunkelScreenplay by Ricardo Arnaiz Richard Pursel Phil Roman Story by Ricardo Arnaiz Dulce Belchez Fernando Lewels Produced byGerry CardosoPhil RomanAlex FloresMichael D. OlmosStarring Rico Rodriguez Kate del Castillo Cheech Marin Gabriel Iglesias Lisa Kudrow Edward James Olmos CinematographyRicardo de la RosaEdited byGrecia VillarMusic byLeoncio Lara Bon[3]ProductioncompaniesAnimexA...

Japanese light novel series and its franchise Not to be confused with Happy Marriage!?. My Happy MarriageFirst light novel volume cover, featuring Miyo Saimori (left) and Kiyoka Kudou (right)わたしの幸せな結婚(Watashi no Shiawase na Kekkon)GenreDrama[1]Romance[1]Historical fantasy[2] Novel seriesWritten byAkumi Agitogi [ja]Published byShōsetsuka ni Narō Light novelWritten byAkumi AgitogiIllustrated byTsukiho TsukiokaPublished...

 

This article is about the Indiana University system. For the main campus commonly known as IU, see Indiana University Bloomington. For the Pennsylvania university, see Indiana University of Pennsylvania. For the state university, see Indiana State University. For other uses, see Indiana University (disambiguation). Public university system in Indiana Indiana UniversityLatin: Indianensis UniversitasMottoLux et Veritas(Light and Truth)TypePublic university systemEstablishedJanuary 20, 1820...