User Tools

Site Tools


de_description


PLATTFORMEN

Objektorientiert + Moderne BASIC-Syntax + Leistungsfähige IDE + Ausführliche Dokumentation

KBasic unterstützt folgende Plattformen:

  • Windows Vista, 2000, XP
  • Linux (KDE oder GNOME), UNIX basierende wie FreeBSD werden in Kürze fertiggestellt
  • Mac OS X (ab Version 10.3)

Es können moderne BASIC-Applikationen für Windows, Mac OS X und Linux mit der einfachen und bekannten Basic-Syntax und einem modernen Aussehen erstellt werden.

BESCHREIBUNG

www.kbasic.com_images_symbol.jpg KBasic kommt mit Java-Objekt-Orientierung und Unterstützung für VB6 und QBasic, mit 100% Syntax-Kompatibilität, dabei ist es kein VB6 oder VB.Net-Klone! KBasic unterstützt die VB.NET-Syntax, -Funktionen sowie Objekte und Klassen. KBasic kombiniert die Leistung von Objektorientierten Sprachen wie C++ mit den der einfachen Benutzbarkeit von VB6.

KBasic erlaubt Entwicklern von VB6-Anwendungen ihre Anwendungen für verschiedene Betriebssysteme wie Windows, OS X und Linux-Umgebungen zu erstellen. Dabei werden keine komplizierten und aufwändigen Studien benötigt da KBasic die gewohnten visuellen Design-Paradigmen nutzt und eine vollständige Übersetzung der Basic-Sprache beinhaltet.

KBasic besteht aus folgenden Programmen: www.kbasic.com_images_virtualmachine.jpg

  • einer Entwicklungsumgebung mit visuellem Form-Designer (IDE)
  • einem Kopiler (KBC)
  • einem Interpreter (VM)
  • einem grafischen Anwender-Interface (VM)

KBasic besteht aus über 5MB Quellcode (C++)

130,000 Quellcodezeilen, 100 Klassen und 2.500 Methoden in 280 Dateien

Es ist wirklich einfach, Multi-Plattform-GUI-Anwendungen zu entwickeln mit der bekannten BASIC-Syntax in einem modernen Design, weil KBasic die gewohnten visuellen Design-Paradigmen nutzt und über eine vollständige Umsetzung der BASIC-Sprache verfügt. KBasic verwendet Qt um Cross-Plattform-Funktionalität zu erreichen (Qt ist die führende Cross-Plattform-Technologie weltweit).


Feature-Übersicht www.kbasic.com_images_languageelements.jpg

Auf den folgenden Seiten werden Sie KBasic genauer kennenlernen. Zwar kann ich nicht alles im Detail beschreiben wie in einem Programmierer-Handbuch und beschränke mich hier auf einige KBasic-Eigenschaften die ich ausführlicher erkläre. Trotzdem, wenn Sie sich ein wenig mit C, VB6, ähnlichen BASIC-Dialekten oder Java auskennen werden Sie keine Schwierigkeiten mit KBasic haben. Es teilt sich viele Konzepte mit diesen Programmiersprachen.

Das KBasic-Buch: Dieses Buch enthält detaillierte Informationen zu KBasic Sie finden es im KBasic Software Atelier im 'Help'-Menü in Form einer PDF und einer HTML-Datei.

www.kbasic.com_images_openfileformat.jpg

  • Schreiben Sie einen Quellcode für Windows-, Mac OS X- and Linux-Anwendungen
  • OOP RAD Funktionen liefern eine hohe Produktivität
  • Viel billiger als andere BASIC-Dialekte
  • Rückwärts-Kompatibilität für VB6 und Aufwärts-Kompatibilität für Vererbung und andere OOP-Features
  • Machen Sie es auf mehreren Plattformen
  • Einfache Übernahme existierender VB6-Projekte da KBasic 100% Syntax-Kompatibel ist
  • Vertraute Entwicklungsumgebung
  • Gleiche Syntax wie VB6
  • Einfach zu erlernen: Built-in-Tips und Sprach-Referenz
  • Mehr Produktivität mit OOP RAD Features
  • Built-in Speicher-Management
  • Echter Cross-Plattform-Einsatz
  • Vertraute Sprach-Features: OOP, einfache Vererbung, Ausnahmen, etc.
  • Drag & drop GUI-Umgebung
  • Vertraute Editier-Features I: einfaches und schnelles browsen in Ihrem Quellcode
  • Vertraute Editier-Features II: Auto-Vervollständigen von Built-in-Funktionen und Datentypen sowie Anwender-Funktionen und -Typen
  • Auto-Vervollständigung (Nur in der Professional-Version)
  • Vertraute Debugging-Features: Einzelschritt, Anzeige von Variablen-Werten, Lokal- und Global-Umgebung
  • Vertraute Install-/Uninstall-Funktionen: für Linux (KDE), Mac OS X und Windows


  • Ausführliche Dokumentation!

KBasic enthält ausführliche Dokumentationen, mit Hypertext-Querverweisen, so das Sie sich schnell zu dem Eintrag vor klicken können der Sie interessiert. Der Teil der Dokumentation, die Sie vermutlich am meisten benutzen ist die KBasic-Sprachreferenz. Jeder Link bietet eine andere Art der Navigation durch die KBasic-Sprachreferenz; prüfen Sie einfach alle Möglichkeiten um die für Sie am besten geeigneten Weg zu finden. Vielleicht möchten Sie auch gerne das KBasic-Buch ausprobieren: Dieses Buch enthält ausführliche Informationen über KBasic und es bietet eine Volltextsuche. Es gibt auch eine wachsende Zahl von KBasic Büchern.

www.kbasic.com_images_objectoriented.jpg


  • Tausende von Beispielen!

KBasic enthält eine große Anzahl von kleinen und größeren Beispiel-Programmen an denen Sie lernen können bestimmte Problem einfach mit KBasic zu lösen. Die meisten zeigen wie Sie bestimmte Klassen oder Module nutzen können, andere zeigen Programmiertechniken und KBasic- Grundlagen.

Die meisten Beispiele zeigen Grundsätzliche Funktionen und Anwendungen von KBasic und von Objektorientierten Anweisungen und sind nicht ausführlich dokumentiert. Wenn Sie daran interessiert sind an einer Zeile-für-Zeile Dokumentation nutzen Sie bitte “Programmieren lernen für Anfänger” und “Das KBasic Buch”.

www.kbasic.com_images_codeeditor.jpg www.kbasic.com_images_formdesigner.jpg www.kbasic.com_images_projectwindow.jpg www.kbasic.com_images_morewindow.jpg

Feature Details

KBasic

  • ist objektorientiert mit Objekten und Klassen, einfacher Vererbung und Polyformie, Private-, Public-, Protect-Objekten und -Elementen
  • ist Syntax-Kompatibel mit alten Basic-Dialekten wie QBasic oder VB6
    • hat Optionale Parameter
    • erstellt Parameter-Arrays
    • Name-Arguments [mySub(param1 := 23, param2 := 100)]
    • unterstützt 'On error goto'
    • unterstützt 'Label und goto'
    • unterstützt Variablen-Benennung (Mit Shortcuts wie name$ or n%)
    • verfügt über Eigenschaften-Handling
    • verfügt über einfache Variablen, Arrays und Anwender-definierte Typen diese können an Funktionen weitergegeben werden
  • enthält eine Virtuelle Maschine
    • unterstützt die automatische Garbage Collection
    • hat geschützte Daten und Arrays
    • hilft durch modernes Error-Management durch Ausnahmebehandlung


KBasic ist nicht eine Programmiersprache es 'ist' drei Sprachen.

Mit den folgenden Kommandos können Sie KBasic in eine der drei Sprachen 'schalten'.

Wenn Sie die neuesten KBasic-Features (Default) nutzen wollen:
OPTION KBASIC
Wollen Sie die VB6-Codes nutzen:
OPTION OLDBASIC
Für die Nutzung von alten Basic-Codes wie QBasic:
OPTION VERYOLDBASIC


Es ist möglich alle drei Modi in einem Programm zu nutzen! Ein Modul des Programmes nutzt den einen und der Rest den anderen Modus. Die Anweisung ist an erster Stelle des jeweiligen Modules einzufügen. Der Standart-Modus ist OPTION KBASIC.

www.kbasic.com_images_onerrorgoto.jpg

KBasic hat Kommandos für Controlflow, Conversion/Casts, Error-Handling, Events und Library Funktionen wie für GUI, Eingabe und Ausgabe, Mathematik und vieles mehr. Lesen Sie dies in der Sprach-Referenz nach. Aber neben diesem sollten Sie mit den folgenden wesentlichen Teilen arbeiten.

  • Class / Module
  • Sub / Function / Method
  • Variable / Constant / Property
  • Array
  • Type
  • Enum

Wenn Sie Ihr erstes KBasic-Programm beginnen werden Sie merken das es sehr ähnlich VB6 ist. Sie haben Klassen oder Module und Formen mit denen Sie arbeiten. Ereignisse in Ihren Formen werden vom Anwender gesteuert und reagieren entsprechend den Codes in den entsprechenden Sub's. Das ist alles.

www.kbasic.com_images_polymorphism.jpg



Anmerkungen

  • Type
  • Variable / Konstante / Eigenschaften
  • Variablen-Scope
    • global
    • module
    • class
    • local
      • module function oder module sub
      • class static method
      • class instance method
  • Array
    • static
    • dynamic
  • Sub / Methoden
    • Standart-Argumente
    • Argumente als Referenz oder als Wert abhängig von einfachen Typen sind möglich
    • Funktions-Überladung möglich
    • Rekursive Aufrufe sind möglich
    • Nicht-einfache Lokale Variabele (Objekte) werden nicht automatisch gelöscht bei einer Referenz auf diese
    • Ausnahme-Handling
  • Function / Methoden
    • Standart-Argumente
    • Argumente als Referenz oder als Wert abhängig von einfachen Typen sind möglich
    • Funktions-Überladung möglich
    • Rekursive Aufrufe sind möglich
    • (Anwender-definierte Typen und Arrays können auch zurückgegeben werden (in Vorbereitung))
    • Nicht-einfache Lokale Variabele (Objekte) werden nicht automatisch gelöscht bei einer Referenz auf diese
    • Ausnahme-Handling
  • Scope
    • global
    • module
    • class static
    • class instance
    • local
      • module
      • class static
      • class instance
  • Class
    • Konstruktor (Methoden-Überladung möglich)
    • Standart Constructor (Automatischer Aufruf wenn kein Constructor definiert)
    • Destructor (Automatischer Aufruf vom Garbage Collector)
    • Instanz-Methoden (Arbeiten mit Variablen eines Objektes einer Klasse)
    • Statische-Methoden (Arbeitet ohne Relation auf ein Objekt)
    • Instanz-Variablen (private, public, protected), Variabelen von einem Objekt einer Klasse
    • Statische-Variablen (Arbeitet ohne Relation auf ein Objekt)
    • Statischer Quellcode einer Klasse (Wird beim Start einer Anwendung ausgeführt)
    • Statische Konstante
    • Property-Unterstützung
    • Variable (private, protected, public)
    • Konstante (private, protected, public)
    • Types / als private oder public
    • Alle Methoden sind 'virtuell' (entsprechend C++ Terminologie)
  • Module
    • Subs oder functions
    • Variable (private, public)
    • Konstante (private, public)
    • Typen / enum können Private oder Public sein
  • Global
    • Subs oder Funktionen
    • Variable
    • Konstante
    • Types / enum


Syntax Beispiele

www.kbasic.com_images_type.jpg www.kbasic.com_images_variable.jpg www.kbasic.com_images_array.jpg
www.kbasic.com_images_array.jpg www.kbasic.com_images_sub.jpg www.kbasic.com_images_exception.jpg
www.kbasic.com_images_function.jpg www.kbasic.com_images_class.jpg www.kbasic.com_images_constructor.jpg
www.kbasic.com_images_instancemethod.jpg www.kbasic.com_images_property.jpg www.kbasic.com_images_module.jpg
www.kbasic.com_images_global.jpg www.kbasic.com_images_instancevariable.jpg


Open Source

Sehen Sie hinter die Kulissen! Finden Sie mehr heraus über KBasic. Sie können den Quellcode von KBasic erhalten. Für mehr Informationen sehen Sie hier nach: Quellcode.

www.kbasic.com_images_opensource.jpg

Beispiele

KBasic – Beispiele

Sehen Sie hinter die Kulissen! Finden Sie mehr heraus über KBasic.

  • Click Examples für mehr Informationen!

Und hier ein Beispielprogramm.

Zum Verständnis des folgenden Beispiel-Programmes werden viele Angaben erklärt:

Const globalConst = 1 
Const globalConst2 As Integer = 2 
Dim globalVar As Integer = 4 
Dim globalVar2 As test 
 
globalVar2 = test.Entry 
 
  
' global scope  
 
Enum test 
  Entry = 666 
  Entry2 
  Security = Entry 
  securus 
  secura 
  securum 
End Enum 
 
Type book  
  bkname As String * 100   
  isbn(1000) As Integer   
End Type 
 
Type address 
  books(50) As book   
  age As book   
  Name[9] As Integer   
End Type 
 
 
Sub globalSub() 
  Dim localVar = 99    
End Sub 
 
 
' module scope 
 
Module module1 
 
  Public Type address    
    age As Integer     
  End Type 
 
  Public Type module_type    
    element AS integer 
  End Type   
 
  Public Enum module_enum    
     Entry 
     Entry2 
     Security = Entry 
  End Enum 
 
  Const moduleConst = 7  
 
  Public publicModuleVar As Integer  
  Private privateModuleVar As Integer  
                  
 
  Sub moduleExplicit() 
    Dim localVar = module1.publicModuleVar  
    dim localVar2 = module1.moduleConst 
 '   Dim localVar3 As module1.module_enum '  full type name not allowed after AS 
    Dim localVar3 As module_enum 
    localVar3 = module1.module_enum.Entry 
    'Dim localVar4 As module1.module_type     '  full type name not allowed after AS 
  End Sub 
 
  Sub moduleImplicit() 
    dim localVar = publicModuleVar 
    dim localVar2 = moduleConst 
    dim localVar3 as module_enum 
    localVar3 = module_enum.Entry 
    dim localVar4 as module_type 
  End Sub 
 
  Sub moduleSubWithDefaultArgument(ko as integer = 6) 
    dim localVar = ko 
  End Sub 
 
  Sub moduleSubWithOptionalArgument(Optional ko As Integer) 
    If Not IsMissing(ko) Then 
      dim localVar = ko      
    End If 
  End Sub 
   
  Sub moduleSub() 
    Const localConst = 6 
    dim n = localConst 
  End Sub 
 
  Sub moduleSubWithArgument(i as integer) 
    dim localVar = i 
  End Sub 
 
  Sub moduleSubWithArgumentShadowing(i2 as integer) 
    Dim localVar = i2 
    Dim i2 = localVar + 99 
    dim i3 = i2 
  End Sub 
     
  Sub subOverloading ( ) 
    print "sub1" 
  End Sub 
   
  Sub subOverloading ( i as integer = 1) 
    print "sub2"    
  End Sub 
 
  Function moduleFunction() As String 
     
    subOverloading() 
    subOverloading(88) 
     
    return "hello" 
  End function 
 
  function moduleFunctionRecursive(byref i as integer) as integer 
    if i > 6 then return 1''i 
 
    ''i = i + 1 
    return moduleFunctionRecursive(1)''i) 
  End function 
 
End Module 
 
 
' class scope 
 
Class Walzer 
  Public var As integer 
End Class 
 
 
Class Salsa inherits Walzer 
 
  public Enum class_enum 
     Entry 
     Entry2 
     Security = Entry 
  End Enum 
 
  public type class_type 
    element AS integer 
  End Type 
 
  const classConst = 4 
 
  public publicInstanceVar as integer 
  Private privateInstanceVar As Integer 
  'Protected protectedInstanceVar As Integer  
 
  Static Public publicClassVar As Integer' = 8  
  'dim publicModuleType as module1.module_type 
  dim publicModuleType2 as module_type 
 
  ' parent constructor call inside constructor 
 
  Sub meExplicit() 
    dim localVar = Me.publicInstanceVar '  it is the same with Parent 
    dim localVar2 = Me.publicClassVar  
    dim localVar3 = Salsa.publicClassVar 
    dim localVar4 = Salsa.classConst 
    Dim localVar5 = Me.classConst 
'     
    Dim localVar6 As class_enum 
    localVar6 = Salsa.class_enum.Entry 
'    Dim localVar7 As Me.class_enum   '  full type name not allowed after AS 
    dim localVar8 as class_type 
  End Sub 
 
  Sub meImplicit() 
    dim localVar = publicInstanceVar 
    dim localVar2 = publicClassVar 
    dim localVar3 = classConst 
    Dim localVar4 As class_enum 
    dim localVar5 as class_type 
 
  End Sub 
   
  Sub classSub() 
    const localConst = 6 
    dim n = localConst 
  End Sub 
 
  Sub classSubWithArgument(i as integer) 
    dim localVar = i 
  End Sub 
   
  function classFunction() as string 
    return "hello" 
  End Function 
 
   
'  Static Public Sub test() Throws Walzer      
'    Throw New Walzer      
'  End Sub  
   
  
'  Private pvtFname As String  
'   
'  Public Property Nickname As String  
' 
'    Get 
'      print "Hi" 
'    End Get  
' 
'    Set ( ByVal Value As String )  
'      print "Hi" 
'    End Set  
' 
'  End Property  
   
End Class 
 
 
 
CLASS rumba 
 
  Public latein AS INTEGER 
  'Public mySalsa As New Salsa  
  'Public mySalsa2[10] As Salsa  
 ' Public mySalsa3[] As Salsa   
 
 
  PUBLIC SUB dance_rumba() 
    Print "rumba!!!" 
    'print mySalsa.var 
  End Sub 
 
  ' default constructor  
 
  Constructor rumba () 
    print "constructor" 
  End Constructor 
 
  Constructor rumba ( _latein as integer) 
    Print "constructor2" 
    latein = _latein 
  End Constructor 
 
  Destructor rumba ( ) 
    print "destructor" 
  End Destructor 
   
  Static Sub myMsgBox(ByRef m As Double)  
   '' m = m + 1   
  End Sub 
  
  Static Sub myMsgbox2(Optional m As Integer) 
    If IsMissing(m) Then 
     '' m = m + 1   
    Else 
      Print "do nothing"       
    End If 
  End Sub 
 
  Static Function monique(ByRef i As Integer, ByVal h As Double, ParamArray b() As Variant) As Integer  
 
    For i = LBound(b) To UBound(b) 
      Print b(i)     
    Next i  
   
    Return i 
     
  End Function  
 
 
  static SUB structByReference(byref m AS address) 
    ''m.name[2] = 71   
  End Sub 
 
'  static SUB structByValue(byval m AS address) ' struct passed byval not allowed 
'    m.name[2] = 71   
'  End Sub  
 
'  Static Function returnStructByVal() as address ' struct returned not allowed 
'    dim m AS address 
'    ''m.Name[2] = 71  
'    return m 
'  End Sub  
 
'   static SUB arrayByRef(byref m[] AS address) ' array arguement not allowed 
'     m[8].name[2] = 71   
'   End Sub   
 
'    Sub test(ByRef t(8) As Long)    ' fixed size array arguement not allowed 
'    End Sub 
 
'    Sub test2(ByVal t(8) As Long)    ' fixed size array arguement not allowed 
'    End Sub 
 
'   Static Function returnArrayByRef() as adress[] ' open array returned not allowed 
'     dim m[8] AS address 
'     m[1].Name[2] = 71  
'     return m 
'   End Sub  
 
'   static SUB arrayByRef(byref m[][] AS address) 
'     m[8][9].name[2] = 71   
'   End Sub  
'  
'   Static Function returnArrayByRef() as adress[][] ' open array returned not allowed 
'     dim m[8][6] AS address 
'     m[1][4].Name[2] = 71  
'     return m 
'   End Sub  
 
END CLASS 
 
 
DIM j(5 TO 10) AS address 
 
 
 
''j(3).namer(6) = 123 
''j(1).age.isbn(10) = 1000 
''j[2].namer[1] = j(3).namer(6) + j(1).age.isbn(10) 
 
 
 
'Dim Emp As rumba = New rumba 
DIM r AS NEW rumba 
 
r.dance_rumba() 
 
'With r 
'  .dance_rumba() 
'End With 
 
'Print r.latein  
'Print r.mySalsa.var 
 
Print globalVar ' accessable from everywhere  
Print globalVar2 ' accessable from everywhere  
Print globalConst ' accessable from everywhere  
publicModuleVar = 99 
Print publicModuleVar 
Salsa.publicClassVar = 111 
Print Salsa.publicClassVar 
print moduleConst 
 
DIM m = 1 AS INTEGER 
 
'PRINT rumba.monique( h:=12.2, i:=m ) 
''Print rumba.monique(m, 12.2, 5, 8, 7) 
 
 
' TRY 
'   Salsa.test() 
' CATCH (b AS Walzer) 
'   PRINT "got you!" 
' End Catch  
'  
 
 

WISSENSWERTES FÜR LINUX UND MAC!

Warum ist KBASIC nützlich für die Linux-, Windows-oder Mac OS-X-Community?

Im 21. Jahrhundert sollte das Programmieren von Computern nicht nur einigen wenigen, mit speziellen Wissen ausgestatteten, vorbehalten sein. Es soll jeder, der will, in die Lage versetzt werden dies tun zu können. Programmieren wird so einfach wie das surfen im Internet:

  • Drag and Drop-Design
  • Point and click zum Kompilieren und Installieren
  • Klicke auf das Icon zum Start


Die reale Alternative

Auch der moderne Computer ist absolut ineffizient, er benötigt Programme um seine Fähigkeiten nutzbar zu machen. Wenn nun immer mehr, auf einfache und schnelle Art, die gewünschten Programme schreiben - das bedeutet nicht die Syntax zu lernen oder die Keywords - wird jeder seinen Computer auf seine eigene Art und Weise und für seine Zwecke nutzen können.

Sie haben bestimmt schon von 'schmutzigem, ineffizientem Code' oder den 'Unsitten' von VB-Programmierern gehört. Dies waren die Worte der 60er, 70er und 80er als Programme auf minimalste RAM- und CPU-Nutzung getrimmt wurden. In der heutigen Zeit sind diese Probleme Geschichte. Hunderte Gigabyte Festplattenspeicher und aber Hunderte von Megabyte RAM - da kommt es auf das eine oder andere Byte nicht mehr an.

Zurück zu Basic

Lockere dein Effizienz-Disziplin, unterstütze besser Benutzerfreundlichkeit und Einfachheit!

KBasic bringt uns näher an diese Realität.


Lese mehr

Was ist das?

BASIC = Beginners All-purpose Symbolic Instruction Code

Standard BASIC

  • BASIC ist die verbreiteste Programmiersprache der Welt
  • Hat eine vertraute, englische Syntax
  • Keine kryptische Syntax - insbesondere für Anfänger
  • Weniger Programmier-Regeln
  • Viele BASIC Funktionen sind sehr ähnlich zu SQL-Funktionen: LEFT, RIGHT und MID


Beispiel:
IF a = 5 AND b < 20 THEN tue_etwas ELSE mach_was_anderes


  • KBasic Ist kompatibel mit den bekanntesten BASIC-Funktionalitäten:

Keywords: IF, THEN, ELSE, ELSEIF, ENDIF, FOR, EACH, NEXT, LOOP, DO, WHILE, GOTO, GOSUB, INTEGER, STRING, BOOLEAN, LONG, DIM, AS, SUB, FUNCTION, SELECT, CASE, END, TYPE, PRIVATE, PUBLIC, EXIT, OPTION, EXPLICIT, COMPARE, ON, ERROR, STOP, AND, OR, XOR, NOT …

Datei-Funktionen: ACCESS, APPEND, BINARY, INPUT, OUTPUT, RANDOM, CHDIR, MKDIR, RMDIR, FILES, CLOSE, EOF, FILEATTR, FREEFILE, KILL, LOC, LOF, PRINT, NAME, RESET, SEEK, SHELL, WITDH, WRITE …

Sonstige Funktionen: BEEP, DATE, HEX, TIME …

Mathematische Funktionen: ABS, ATN, COS, SIN, TAN, EXP, LOG, SGN …

Reguläre Datentypen: INTEGER, STRING …

Anwenderdefinierte Datentypen: TYPE, ARRAY …


KBasic Erweiterungen

Ich möchte den Anwendern die Möglichkeit geben moderne Programmiertechniken zu nutzen. Dazu sind zum Standard-Basic-Dialekt einige Neuerungen hinzugefügt worden.

  • Objekt-Orientierte Features wie Anwenderdefinierte Klassen
  • Datenbankunterstützung


Was kann ich damit machen?

Es ist sehr viel möglich mit BASIC. Wissen Sie nicht in welcher Sprache die meisten Wissenschaftler und Informatiker zum Testen ihrer Theorien und Demos für die Kollegen nutzen? In BASIC! Es ist leicht zu bedienen und verfügt über genügend Grafik-Funktionen um diese mit einfachen Simulationen darzustellen und zu beweisen.


Vorteile

  • Basic unter Linux bringt mehr Flexibilität.
  • Für die meisten Windows-Anwender ist VB die einzige bekannte Sprache.
  • Es gibt Millionen von VB-Entwicklern die VB beruflich nutzen.
  • Es ist die einfachste Sprache für Anfänger, die nicht mit einer Low-Level-Sprache arbeiten wollen.
  • Wenn wir wollen, dass Linux erfolgreich im 'Mainstream' ist, müssen wir dort die gleiche Funktionalität haben wie sie im existierendem 'Mainstream' vorhanden ist.
  • Das System das die meisten Entwickler hat wird gewinnen! Durch das ignorieren von BASIC-Entwicklungen verlassen viele Entwickler Linux.
  • Professionelle Entwickler wollen auch nicht alle 3 bis 5 Jahre eine neue Sprache erlernen müssen. Sie wollen einfach das der Computer das macht was sie diesem über Ihre Programme sagen. Zitat: “Ich kann nicht sagen ob das Programm ein wenig langsamer läuft als unter C++ aber es macht das was ich programmiert habe.”
  • Viele mögen Basic, gerade wegen seiner Einfachheit.
  • Supportmöglichkeit für einen breiten Kundenkreis und in verschiedenen Sprachen
  • Alle die Geld sparen wollen wie Schulen, Universitäten, Anwender und natürlich auch die Software-Anbieter haben in KBasic einen Favoriten.

Wenn Sie immer noch glauben, dass eine BASIC-Sprache nutzlos wäre, senden Sie bitte eine E-Mail an M $ und frage sie, wann diese VB weiter entwickeln.


Historische Beispiele

“Wo sind die Anwendungen?”

Denken Sie einmal an die Situation bei Erscheinen von OS/2 (ein wirklich 'schlechtes' Beispiel)

Es gibt hunderte von VB-Anwendungen neben der Verwendung von VB in kommerziellen Anwendungen. Im Geschäftsbereich werden viele Programme mit VB schnell und sicher ausgeführt, gerade wegen seiner einfachen Anwendung. Und jetzt könne Sie all diese Anwendung auf Linux portieren…


WARUM BASIC?

  • BASIC ist die Anfänger-Programmiersprache. Und warum Anfänger nicht unterstützen?
  • BASIC ist nicht immer optimal, aber es ist keinesfalls die schlechteste Lösung!
  • Nicht jeder hat die Zeit und versteht die manchmal komplexen Zusammenhänge um C++ oder Python zu erlernen.
  • Und jede Programmiersprache hat Ihre Stärken und Schwächen.


Nützlich für Linux / Mac OS X / andere Projekte?

Denn je größer die Gruppe der Linux / Mac-Benutzer wird umso mehr Software-Hersteller werden Ihre Software von Windows auf diese Systeme portieren wollen oder neue Software schreiben. Sie sähen einen möglichen Gewinn, anstatt nur eine Goodwill-Spende für die Linux / Mac-Community abzugeben. Dies unterstützt auch die Weiterentwicklung

Alles das macht Linux / Mac zu dem was es jetzt ist und was es wird, es ist ein direktes Ergebnis der Arbeit mit Menschen die daran arbeiten. Und je mehr Menschen entdecken das die Linux-/Mac-Möglichkeiten größer geworden sind umso mehr kommen an Bord und helfen dabei.

Basic auf Linux- und MAC-Systemen setzen den Trend zu mehr Flexibilität.


Warum habe ich eine neues BASIC-Projekt begonnen?

  • In aller Kürze: Ich habe eine gute Basic-Sprache mit IDE schon im Jahr 2000 vermisst.
  • Ausführlicher: Ich habe im Internet einige Baisc-Dialekte für Linux gefunden und habe mir die Quellcodes angesehen aber keine konnte mich überzeugen.

FAQ

Lizenzfragen


Q: Benötige ich eine Qt-Lizenz wenn ich eine Open-Source Anwendung veröffentliche oder wenn ich private Programme erstelle?

A: Nein, in diesen Fällen wird keine Qt-Lizenz benötigt!


Q: Benötige ich eine Qt-Lizenz wenn ich kommerzielle Anwendungen erstelle und/oder Anwendung die nicht Open-Source sind?

A: Ja, dann wird die Qt-Lizenz benötigt! Die Lizenz ist von Trolltech erhältlich. Näheres lese bitte unter www.trolltech.com nach.


Q: Ich habe einem MAC und möchte eine KBasic-Entwicklungsumgebung nutzen. Wie viele Kopien eines Softwarepaketes darf ich installieren? Meistens arbeite ich an meinem G5-Tower aber auch an einem Laptop soll gearbeitet werden. Einige Softwarepakete erlauben nur eine Installationen und sind so programmiert das auch nur eine läuft, andere wiederum erlauben die Installation auf zwei verschiedenen Rechnern und die Nutzung nur auf einem (gleichzeitige Nutzung auf beiden Rechnern ist verboten)…

A: Es wird nur eine Lizenz benötigt! Wenn das Programm auf zwei verschiedenen Rechnern, von dir bedient, läuft ist alles in Ordnung.


Q: Warum unterstützt KBasic kein ActiveX?

A: ActiveX läuft nur unter Windows und KBasic ist eine Multilevel-Programmiersprache. Wird nun ActiveX in irgendeiner Form (die Windows API und DLL können in KBasic benutzt werden) in deinem Programm genutzt so kann dieses nur noch unter Windows ausgeführt werden. Der Zugriff auf *.SO-Dateien unter Linux und auf MAC folgen in Kürze.

VB.NET vs. KBasic

WAS IST DER UNTERSCHIED ZWISCHEN VB.NET UND KBASIC?

Portierung von VB Anwendungen auf Linux oder Mac OS X

Hier finden Sie eine Gegenüberstellung von Visual Basic und KBasic. Die folgenden Abschnitte zeigen Ihnen an welchen Stellen diese sich in Art und Weise unterscheiden, im Zusammenhang mit der Portierung von Ihren Projekten. VB kann eine Visual Basic-Anwendung nicht mehr öffnen und den alten VB6-Quellcode ausführen. Es erfordert den Visual Basic-Entwickler um den Code zu ändern. Net kann nicht ausgeführt werden ohne erneute Arbeiten. Also, wenn Sie ein Visual Basic-Entwickler sind, werden Sie Ihre Projekte für die Portierung von neuem schreiben müssen bzw. den alten 'anpassen' was manchmal auf dasselbe hinausläuft. Portieren bedeutet im allgemeinen lernen und den Einsatz neuer Schlüsselwörter und neuer Ideen, anderer Vorgehensweisen etc. Und Teile die so überhaupt nicht mehr arbeiten müssen komplett neu geschrieben werden, alles in allem also eine ganze Menge Arbeit. Warum sollte jemand auf .Net portieren wollen? Nach dem Erlernen einer neuen Sprache (.Net) wird dies deutlich. Und was haben Sie dann geschafft? Sie haben eine Anwendung die nur unter Windows, eventuell sogar nur unter bestimmten Versionen von Windows, läuft. Aber was ist die Alternative? Anstatt das Sie eine quasi neue Sprache erlernen nutzen Sie KBasic! Dort können Sie Ihren VB-Code und die Formen ohne Änderungen übernehmen. Mit anderen Worten: KBasic ist 100% kompatibel was bedeutet, dass KBasic und Visual Basic Keywords und Syntax identisch sind, einschließlich Mid, Left, Abs und so weiter.

Überraschenderweise

Überraschenderweise, in KBasic, im Gegensatz zu anderen BASIC's, kann Mid auch einen String als Mid-Anweisung zuweisen wie VB6 es macht. Fast alle Ihre Visual Basic-Kenntnisse können direkt in KBasic übersetzt werden. Natürlich gibt es in irgendeiner Form Steuerelemente, die nicht die gleiche Funktion haben. Aber zusammengefasst zwischen KBasic und VB liegen die Code-Differenzen nicht in der Syntax sondern im Objekt-Modell das in einigen Fällen unterschiedliche Controls habt oder andere Eigenschaftsnamen besitzt. Die Controls (Formen und Checkboxen usw.) von KBasic und Visual Basic sind einander sehr ähnlich. KBasic hat viel mehr eingebaute Keywords, die für vorwärts- und rückwärts-Kompatibilität mit VB6 und der objektorientierten Programmierung im Allgemeinen benötigt werden. KBasic und Visual Basic haben einige gleiche Keywords. Zum Beispiel, Visual Basic hat Int, GoSub und Space. KBasic hat sie auch.

KBasic Programme laufen auch unter Linux und Mac

Es muss kein Extra-Code geschrieben werden um VB6 in KBasic zu simulieren. KBasic macht dies für euch und verhindert so Performance-Probleme wie in anderen Basic's. Und weiter: KBasic hat Min, Max aber Visual Basic nicht. Einfacher für Sie ist es wenn Sie etwas Zeit in das Handbuch 'KBasic Das Buch' investieren und in die Sprachreferenz. Oder testen Sie KBasic um ein Gefühl dafür zu bekommen. Normalerweise dürften keine Sprachprobleme auftreten die zu einer Neuprogrammierung Ihrer Visual Basic Programme führen. Alle Visual Basic Codes laufen ohne ihn zu verändern, solange nicht Formular-Steuerelemente und andere Objekte beteiligt sind. Außerdem gibt es die sehr hilfreichen Zeilennummern in KBasic, wenn gewünscht. VB-Programme laufen unter Windows. KBasic-Programme laufen auch unter LINUX und MAC OS. KBasic verfügt über eine Reihe von zusätzlichen Datentypen als Visual Basic.

Keine weiteren Unterschiede

Es gibt auch keinen Unterschied zwischen dem, wie Daten zwischen verwandten Strukturen gehandhabt werden in den beiden Sprachen. Beide Module bieten Formen und Klassen. Kein Unterschied besteht bei der Schaffung von Strukturen und Daten. Visual Basic hat benutzerdefinierte Typen und KBasic auch. Die Struktur der Sprache Visual Basic und KBasic ist ähnlich, aber nicht exakt gleich. KBasic bietet einige zusätzliche neue Keywords und Funktionalität, um einige der neuen objektorientierten Eigenschaften nutzen zu können. Sie können diese neuen Funktionen in KBasic nutzen oder auch nur die alten VB6 Funktionen. Das Error-Handling ist robust und flexibel in KBasic und nicht so wie in Visual Basic. KBasic bietet zwei Error-Handling Methoden: die Ausnahme, die sich auf eine ganze Methode bezieht, und Try-Catch-Blöcke, die sich auf bestimmte Abschnitte des Codes beziehen. Aber wenn Sie möchten, dass die alten Error-Handling Methoden von Visual Basic zum Einsatz kommen: Diese werden ebenfalls unterstützt. Die Wahl der Portierung auf KBasic gibt Ihnen volle Windows-, Mac- und Linux-Unterstützung, sowie minimale Systemanforderungen und Portierbarkeit auf Windows und Linux.

Zumindest vor dem Start mit .Net sollten Sie KBasic versuchen. Vielleicht finden Sie das KBasic das Richtige für Sie und einen klaren Weg in die Zukunft ist. Außerdem hilft ein VB-Project-Converter Ihnen dabei das Umwandeln Ihrer Projekte durchzuführen.

KBasic ist DER BASIC Alternativ-Compiler

Warum ist KBasic ein alternativer BASIC-Compiler für Windows, Mac OS X und Linux? KBasic ist extrem gut gebaut, ist eine leistungsfähige Programmiersprache und verfügt über eine komplette IDE: Also ein sehr professionelles Arbeitsumfeld (RAD), die sehr ähnlich VB6 ist, eben eine gültige Alternative zu VB6. Es hat hunderte von Befehlen und Funktionen. Mit KBasic können Sie Linux-oder Mac OS X-Applikationen aus der Windows-Versionen kompilieren (oder umgekehrt) und ist eine plattformübergreifende Programmiersprache. Es ist derzeit verfügbar für Windows XP/2000, Mac OS X und Linux/i386. Es erzeugt Stand-Alone-EXE/BIN und hat eine große IDE um Anfängern zu helfen ihre Anwendungen zu erstellen. KBasic hat auch einen Visuellen-Designer mit allen wichtigen Elementen wie Windows, Forms, Menü- und Daten-Kontrollen, wie etwa Buttons, Labels und Frames, Textfelder, Radio-Buttons, Combo-boxes, Listenfelder… Die einzige wirkliche Alternative zum offiziellen VB6: Das KBasic Projekt startete im Jahr 2000 als Open-Source-Projekt… KBasic ist ein professionelles Entwicklungs-Tool und bietet alle Elemente um professionelle Produkte zu erstellen. KBasic gibt eine einfach zu bedienenden API zum Schreiben von GUI-Anwendungen auf mehreren Plattformen und die Anwendung benutzt das Look-and-Feel des jeweiligen Systemes.

Klar definierte Sprache

Die Sprachstruktur, die Aussagen und die Funktionen sind sehr einfach zu verstehen und die Dokumentation ist ausführlich. KBasic kommt mit einem sehr guten und druckbarem Handbuch mit mehr als 140 Seiten, das sich im Detail mit der großen Anzahl von Kommandos, Anweisungen und Funktionen beschäftigt. Eine leistungsfähige und voll funktionsfähige Basic-Sprache: Es ist vollkommen objektorientiert und kann Byte-Code kompiliert werden. Die Syntax ist sehr ähnlich zu VB6 und die Sprache unterstützt gemeinsame Methoden und Eigenschaften. Es handelt sich um eine vollständig objektorientierte Sprache, die Vererbung und Polymorphismus unterstützt. Die IDE bietet auch ein Projektmanagement und Property Editing, Syntax-Highlighting des Quellcodes, Code-Vervollständigung und einen Debugging-Modus. Die IDE bietet eine Source-Level-Debugger mit Breakpoints, Single Stepping: Step Through Code, anzeigen von Werten von Variablen in speziellen Fenstern oder durch Bewegen des Mauszeigers auf den Namen im Editor. Das wichtigste Merkmal von KBasic ist, dass es erstellt wurde, damit erfahrene Entwickler mit VB6-Programmierung für Linux, Mac OS X und Windows starten können ohne eine neue Sprache erlernen zu müssen.

KBasic ist ein hochwertiges und professionelles Basic für Linux, Mac OS X und Windows, einer sehr guten Basic-Sprache und wird ständig verbessert und aktualisiert.

VB6 vs. KBasic

WAS IST DER UNTERSCHIED ZWISCHEN VB6 UND KBASIC?

Im allgemeine sind beide gleich

  • KBasic ist 100% Syntax-Kompatibel (keywords wie DIM, IF, SELECT CASE…)
  • KBasic's IDE ist der von VB6 sehr ähnlich (Form Designer, Syntax Highlighting, Auto Completion, Builtin-Help…)
  • KBasic unterstützt viele Controls, diese sind sehr ähnlich den Controls von VB6 (Form, CommandButton, TextBox…)
  • KBasic kommt mit einer Menge von Objekten ähnlich VB6 (Application, …)
  • KBasic kann eigenständige Aplikationen erstellen (EXE, BIN…)
  • KBasic kann mit vielen Datenbanken arbbeiten (in Kürze: MySQL, ODBC…)
  • KBasic unterstützt nicht ActiveX da ActiveX nur auf Windows beschränkt

Schritte weg von VB6

KBasic unterstützt 100% der Syntax von VB6. Hinzu kommt, dass viele GUI-Komponenten vertraut sind. Und es ist möglich, GUI-Anwendungen zu entwickeln, mit der bekannten BASIC-Syntax, in einer modernen Umgebung. So kommt es mit Java-Objekt-Orientierung und Unterstützung für das rückständige VB6 und QBasic, denn es hat eine 100% kompatible Syntax. KBasic verbindet die Ausdruckskraft von objektorientierten Programmiersprachen wie C und der Vertrautheit mit der Benutzerfreundlichkeit von VB6. Es erlaubt Entwicklern mit einer installierten Basis von VB6, Anwendungen zu entwickeln und für Windows, Mac OS X und Linux-Umgebung nutzbar zu machen, ohne dass sie aufwändig eine neue Sprache erlernen müssen. KBasic nutzt die gewohnten visuellen Design-Paradigmen und verfügt über eine vollständige Umsetzung der BASIC-Sprache.

Was mit KBasic gelingt

Die traditionelle Haltung, das sie alles aufgeben müssen was Sie wissen, können Sie bei KBasic aufgeben. Mit Kbasic haben Sie langfristig die Möglichkeit sich an eine 'neue' Sprache zu binden ohne das alte aufgeben zu müssen und haben zusätzlich die Möglichkeit, im Zuge der Weiterentwicklung, sich mit neuen Konzepten der Programmierung zu befassen. Wenn Sie ein VB6-Programmierer sind und nun alles was Sie wissen von und über VB6 'vergessen' müssen um eine neue Sprache zu erlernen, sind Sie sofort viel weniger produktiv für viele Wochen oder Monate, bis zu dem Zeitpunkt an dem das neue Sprachkonzept verinnerlicht wurde. Während dessen können Sie bei KBasic von Ihrem bestehenden VB6 Wissen profitieren und es erweitern. Auch können Sie produktiv sein mit dem, was Sie bereits wissen, während sie sich in die Welt der Objektorientierten Programmierung einarbeiten.

Da hat jeder sein eigenes, gedankliches Modell der Programmierung hat ist der Schritt es zu ändern zunächst etwas chaotisch, da es 'schlimm' genug ist mit einer neuen Sprache zu beginnen. Das größte Problem beim erlernen einer neuen Sprache ist die Produktivität. Keine Firma kann es sich leisten einen produktiven Software-Ingenieur Wochen- oder Monatelang zu verlieren nur weil dieser gerade eine neue Sprache erlernt. KBasic ist VB6 sehr ähnlich da es keine komplett neue Syntax oder Programmiermodell hat. Es erlaubt Ihnen weiterhin produktiv tätig zu sein UND eine neue Sprache zu erlernen. Dies sind mit die wichtigsten Gründe KBasic einzusetzen. Außerdem können Sie Ihren VB6-Code in KBasic einfügen und nutzen.

Überraschenderweise

Warum ist KBasic DER BASIC-Alternativ-Kompiler für Windows, MAC OS X und Linux? KBasic ist extrem schlank gebaut, ist eine leistungsfähige Programmiersprache und verfügt über eine komplette IDE. Also ein sehr professionelles Arbeitsumfeld (RAD), die sehr ähnlich VB6 ist, eben eine sehr gute Alternative zu VB6. Es hat hunderte von Kommandos und Funktionen. Mit KBasic können Linux oder Mac OS X-Applikationen aus der Windows-Versionen kompiliert werden (oder umgekehrt) und es ist eine plattformübergreifende Basic-Programmiersprache. Außerdem ist KBasic aktuell für Windows XP/2000, Mac OS X und Linux/i386 verfügbar. Es erzeugt Stand-Alone-EXE / BIN und hat eine große IDE um Anfängern zu helfen ihre Anwendungen zu erstellen. KBasic hat auch einen Visuellen-Designer mit allen wichtigen Elementen wie Windows, Forms, Menü- und Daten-Kontrollen, wie etwa Buttons, Labels und Frames, Textfelder, Radio-Buttons, Combo boxes, Listenfelder… Die einzige wirkliche Alternative zu den offiziellen VB6: Das KBasic Projekt startete im Jahr 2000 als Open-Source-Projekt… KBasic ist ein professionelles Entwicklungs-Tool und bietet alle Elemente um professionelle Produkte zu erstellen. KBasic gibt eine einfach zu bedienenden API zum Schreiben von GUI-Anwendungen auf mehreren Plattformen und die Anwendung benutzt das Look-and-Feel des jeweiligen Systemes.

Die einzige wahre Alternative zu VB6

Das KBasic-Projekt startete in Jahr 2000 als Open Source Projekt… KBasic ist ein professionelles Entwicklungs-Tool das alle Elemente bietet um professionelle Produkte zu entwerfen und erstellen. KBasic gibt eine einfach zu bedienenden API zum Schreiben von GUI-Anwendungen auf mehreren Plattformen und die Anwendung benutzt das Look-and-Feel des jeweiligen Systemes. Die IDE ist mit allen Werkzeugen die ein Programmierer haben muss, wie z.B. einer Kontext-Hilfe, ausgestattet. Die Sprachstruktur, die Aussagen und die Funktionen sind sehr einfach zu verstehen und die Dokumentation ist ausführlich.

KBasic kommt mit einem sehr guten und druckbarem Handbuch mit mehr als 140 Seiten, das sich im Detail mit der großen Anzahl von Kommandos, Anweisungen und Funktionen beschäftigt. Eine leistungsfähige und voll funktionsfähige Basic-ähnliche Sprache: Es ist vollkommen objektorientiert und kann Byte-Code kompiliert werden. Die Syntax ist sehr ähnlich zu VB6 und die Sprache unterstützt gemeinsame Methoden und Eigenschaften. Es handelt sich um eine vollständig objektorientierte Sprache, die Vererbung und Polymorphismus unterstützt. Die IDE bietet auch ein Projektmanagement und Property Editing, Syntax-Highlighting des Quellcodes, Code-Vervollständigung und einen Debugging-Modus. Die IDE bietet eine Source-Level-Debugger mit Breakpoints, Single Stepping: Step Through Code, anzeigen von Werten von Variablen in speziellen Fenstern oder durch Bewegen des Mauszeigers auf den Namen im Editor. Das wichtigste Merkmal von KBasic ist, dass es erstellt wurde, damit erfahrene Entwickler mit VB6-Programmierung für Linux, Mac OS X und Windows starten können ohne eine neue Sprache erlernen zu müssen.

Professionelle Basic-Sprache

KBasic ist ein hochwertiges und professionelles Basic für Linux, Mac OS X und Windows, einer sehr guten Basic-Sprache und wird ständig verbessert und aktualisiert.

Quellcode

Der KBasic Quellcode: Copyright by Bernd Noetscher 2000 - 2007. All rights reserved.

Sie können die öffentlichen KBasic Quellcodes der IDE und VM unter der Beachtung der GNU Public License von der Free Software Foundation (Version 2) erhalten. Wenn Sie daran interessiert sind, mit Hilfe des Quellcodes für andere Lizenzen oder kommerzielle Entwicklung tätig zu werden können Sie kommerzielle Lizenzen von KBasic Software erwerben.

KBasic Software bietet den Sourcecode für Nicht-Open-Source-Projekte der GUI und VM der auf Windows, Mac und Linux läuft. Nämlich IDE, Form Designer, Toolbox, Eigentums-Fenster, Quellcode-Editor mit Syntax-Highlighting, Code-Kompilation, Lesezeichen, Haltepunkte, Quellcode-Browser, eine eingebaute Hilfe, Hilfe-Datei-Generator, Projekt-Fenster et cetera zu einem sehr günstigen Preis. Bitte wenden Sie sich an KBasic Software.

Sie können eine vollständige maschinenlesbare Kopie des Quellcodes (GUI und VM) für die Version 2 der GPL-lizenzierte Teile unter den Bedingungen der GPL Version 2, ohne zusätzliche Gebühren mit Ausnahme der Kosten für die Medien, den Versand, auf schriftlichen Anfrage an KBasic Software (für 30 EUR weltweit).

de_description.txt · Last modified: 2013/04/09 22:57 (external edit)