Membangun Aplikasi Web dengan ASP.NET 3.5 dan C#

 

Tujuan

Memberikan konsep dasar pemrograman web dengan menggunakan framework ASP.NET serta mengenalkan fitur-fitur yang ada dalam ASP.NET seperti Master Page, Membership, Role, Site Map, Profile, koneksi database, dll sehingga peserta dapat membuat aplikasi berbasis web dynamic.

 

Keterangan

  • Jumlah pertemuan : 12x
  • Total waktu training : 30 jam
  • Jumlah jam per pertemuan : 2,5 jam
  • Jadwal pertemuan dapat diatur kemudian bisa 2x atau 3x seminggu, hari dan jam disesuaikan dengan peserta kelas dan pengajar.
  • Alternatif lain adalah dengan workshop model yaitu memadatkan pertemuan menjadi 4x pertemuan, per petemuan 7,5 jam selama 2 minggu (hari sabtu dan minggu)
  • Peserta dapat membawa notebook sendiri atau menggunakan komputer yang disediakan.

 

Hands-On Modul

  • Setiap peserta akan mendapatkan modul pelatihan

 

Software Requirement

  • Windows XP SP2 atau Vista
  • Visual Studio 2005 / 2008
  • Visual Web Developer Express 2005 / 2008
  • SQL Server 2005 Express
  • SQL Server Management Studio Express

 

Materi Training

  • Pengenalan ASP.NET
    • Perbedaan dengan Classic ASP
    • ASP.NET Web Applications
    • Rendering HTML with Server Controls
    • Data Binding pada ASP.NET 2.0
  • Working with Controls
    • Pengenalan Web Controls
    • Simple Input Controls
    • HyperLink dan Button Controls
    • List Controls
    • Controlling Focus
  • MenggunakanRich Server Controls
    • Pengenalan Rich Controls
    • Calendar Control
    • AdRotator Control
    • XML Control
  • Accessing Data
    • Overview of ADO.NET
    • Connecting to Data
    • Executing Commands
    • Working with Data
    • Choosing an ADO.NET Provider
  • Configuration
    • Sekilas Configuration
    • Menggunakan Web Site Administration Tool
    • Programming Configuration Files
  • Data Binding
    • Pengenalan Data Source Controls
    • Menggunakan SqlDataSource Control
    • Menggunakan ObjectDataSource Control
    • Menggunakan XmlDataSource Control
  • Validating User Input
    • Sekilas ASP.NET Validation Controls
    • Menggunakan Simple Validators
    • Menggunakan Complex Validators
    • ValidationSummary Control
    • Validation Groups
  • Themes dan Master Pages
    • Membuat Consistent Web Site
    • ASP.NET 2.0 Themes
    • Master Pages
  • Site Navigation
    • Providers dan Data Sources
    • Membuat XML Site Map File
    • Site Navigation Controls
  • Displaying Data with the GridView Control
    • Menggunakan GridView Control
    • Filter Data pada GridView Control
    • Menggunakan DropDownList pada Grid
    • Menambahkan Hyperlink pada Grid
    • Menghapus Row dan Handling Errors
  • Mengatur State
    • Page-Level State
    • Menggunakan Cookies
    • ASP.NET Session State
    • Menyimpan Objects kedalam Session State
    • Mengkonfigurasi Session State
    • Application State
  • Mengatur Users dengan ASP.NET’s Membership Features
    • Pengenalan Membership dan Roles
    • Menggunakan Membership Controls
    • Menulis kode untuk berinteraksi dengan Membership dan Roles
  • Debugging ASP.NET Applications
    • Menggunakan Visual Studio Debugging Features
    • Handling Errors dan Redirecting Users
  • Menggunakan DataList dan Repeater Controls
    • Sekilas List-Bound Controls
    • Membuat Repeater Control
    • Membuat DataList Control
  • Membuat dan Menggunakan Web Services
    • Sekilas XML Web Services
    • Membuat XML Web Service dengan Visual Studio

Membangun Aplikasi Web dengan ASP.NET 3.5 dan AJAX (C#)

Tujuan

Memberikan konsep dasar pemrograman web dengan menggunakan framework ASP.NET.AJAX sehingga peserta mampu membuat aplikasi web yang dinamis dan interaktif menggunakan ASP.NET dan ASP.NET AJAX Framework

 

Keterangan

  • Jumlah pertemuan : 12x
  • Total waktu training : 30 jam
  • Jumlah jam per pertemuan : 2,5 jam
  • Jadwal pertemuan dapat diatur kemudian bisa 2x atau 3x seminggu, hari dan jam disesuaikan dengan peserta kelas dan pengajar.
  • Alternatif lain adalah dengan workshop model yaitu memadatkan pertemuan menjadi 4x pertemuan, per petemuan 7,5 jam selama 2 minggu (hari sabtu dan minggu)
  • Peserta dapat membawa notebook sendiri atau menggunakan komputer yang disediakan.

 

Hands-On Modul

  • Setiap peserta akan mendapatkan modul pelatihan

 

Software Requirement

  • Windows XP SP2 atau Vista
  • Visual Studio 2005 / 2008
  • Visual Web Developer Express 2005 / 2008
  • SQL Server 2005 Express
  • SQL Server Management Studio Express

 

Materi Training

  • Rich Internet Applications dan AJAX
    • Desktop Applications
    • Web Applications
    • Rich Client Applications
    • Using JavaScript
    • Asynchronous Communication
    • AJAX
    • Microsoft’s AJAX Technologies
    • Aplikasi sederhana dengan AJAX
  • Menggunakan JavaScript
    • JavaScript dan Browser
    • Data Types dan Variables
    • Control Structures
    • Functions
    • Strings
    • Arrays
    • Objects
  • DHTML, DOM dan CSS
    • Apa itu DHTML?
    • Document Object Model
    • Mengakses DOM Nodes
    • Memanipulasi DOM Nodes
    • DOM Events
    • Cascading Style Sheets
  • Microsoft AJAX Client Library
    • Komponen Microsoft’s AJAX
    • ScriptManager
    • Client-Side Page Lifecycle
    • Debugging Support
    • JavaScript Extensions
    • Object-Oriented Programming Support
    • Global API Shortcuts
    • Embedded JavaScript Resources
  • Partial Page Rendering
    • UpdatePanel Control
    • Update Modes
    • Triggers
    • Menggunakan Timer
    • PageRequestManager
    • Partial Page Update Lifecycle
    • UpdateProgress Control
  • Remote Method Calls
    • Web Service Methods
    • Handling Errors
    • Menggunakan Context
    • Page Methods
    • JSON Serialization
    • ScriptMethod Attribute
  • AJAX Control Toolkit
    • Menggunakan ACT Controls di Visual Studio
    • Extender Controls
    • Popup Controls
    • ACT Controls dan Web Services

Fundamental Java Programming (Konsep OOP dengan Java)

 

Tujuan

Memberikan konsep pemrograman dengan menggunakan java, sehingga peserta dapat memahahami konsep Object Oriented Programming dengan java seperti konsep enkapsulasi, inheritance, polymorfisme, interface, dll.

Keterangan

  • Jumlah pertemuan : 12x
  • Total waktu training : 30 jam
  • Jumlah jam per pertemuan : 2,5 jam
  • Jadwal pertemuan dapat diatur kemudian bisa 2x atau 3x seminggu, hari dan jam disesuaikan dengan peserta kelas dan pengajar.
  • Alternatif lain adalah dengan workshop model yaitu memadatkan pertemuan menjadi 4x pertemuan, per petemuan 7,5 jam selama 2 minggu (hari sabtu dan minggu)
  • Peserta dapat membawa notebook sendiri atau menggunakan komputer yang disediakan.

 

Hands-On Modul

  • Setiap peserta akan mendapatkan modul pelatihan

 

Software Requirement

  • Windows XP SP2 atau Vista
  • J2SDK 1.6 
  • Netbeans 6.1

 

Materi Training

  • Getting Started with Java SE
    • Apa ituJava?
    • Bagaimana menggunakan Java
    • Program pertama dengan Java
    • JDK Directory Structure
  • Datatypes dan Variables
    • Primitive Datatypes
    • Declarations
    • Variable Names
    • Numeric Literals
    • Character Literals
    • String
    • String Literals
    • Arrays
    • Non-Primitive Datatypes
    • Dot Operator
  • Operators dan Expressions
    • Expressions
    • Assignment Operator
    • Arithmetic Operators
    • Relational Operators
    • Logical Operators
    • Increment dan Decrement Operators
    • Operate-Assign Operators (+=, etc.)
    • The Conditional Operator
    • Operator Precedence
    • Implicit Type Conversions
    • The Cast Operator
  • Control Flow
    • Statements
    • Conditional (if) Statements
    • Menambahkan else if
    • Conditional (switch) Statements
    • while dan do-while Loops
    • for Loops
    • A for Loop Diagram
    • continue Statement
    • break Statement
  • Methods
    • Methods
    • Memanggil Methods
    • Mendefinisikan Methods
    • Method Parameters
    • Scope
    • Mengapa menggunakan static?
  • Object-Oriented Programming
    • Pengenalan Object-Oriented Programming
    • Classes dan Objects
    • Fields dan Methods
    • Encapsulation
    • Access Control
    • Inheritance
    • Polymorphism
    • Best Practices
  • Objects dan Classes
    • Mendefinisikan Class
    • Membuat Object
    • Instance Data dan Class Data
    • Methods
    • Constructors
    • Access Modifiers
    • Encapsulation
  • Menggunakan Java Objects
    • Menampilkan dari Console
    • printf Format Strings
    • StringBuilder dan StringBuffer
    • Methods dan Messages
    • toString
    • Parameter Passing
    • Comparing dan Identifying Objects
    • Destroying Objects
    • Menggunakan Primitive-Type Wrapper Classes
    • Autoboxing
  • Inheritance pada Java
    • Inheritance
    • Inheritance in Java
    • Casting
    • Method Overriding
    • Polymorphism
    • super
    • Object Class
  • Advanced Inheritance dan Language Constructs
    • Enumerated Types – Java 5.0
    • Abstract Classes
    • Interfaces
    • Using Interfaces
    • Comparable
    • Collections
    • Generics
  • Packages
    • Packages
    • Import Statement
    • Static Imports
    • CLASSPATH dan Import
    • Defining Packages
    • Package Scope
  • Exception Handling
    • Sekilas Exceptions
    • Catching Exceptions
    • finally Block
    • Exception Methods
    • Declaring Exceptions
    • Defining dan Throwing Exceptions
    • Errors dan RuntimeExceptions
    • Assertions
  • Input/Output Streams
    • Sekilas Streams
    • Bytes vs. Characters
    • Converting Byte Streams ke Character Streams
    • File Object
    • Binary Input dan Output
    • PrintWriter Class
    • Reading and Writing Objects
    • Basic and Filtered Streams
  • Core Collection Classes
    • The Collections Framework
    • The Set Interface
    • Set Implementation Classes
    • List Interface
    • List Implementation Classes
    • Queue Interface
    • Queue Implementation Classes
    • Map Interface
    • Map Implementation Classes
  • Collection Sorting dan Tuning
    • Menggunakan Java 5.0 Features dengan Collections
    • Sorting dengan Comparable
    • Sorting dengan Comparator
    • Sorting Lists dan Arrays
    • Collections Utility Methods
    • Tuning ArrayList
    • Tuning HashMap dan HashSet
  • Inner Classes
    • Inner Classes
    • Member Classes
    • Local Classes
    • Anonymous Classes
    • Instance Initializers
    • Static Nested Classes

Dasar Pemrograman C# 2.0 (Introduction C# 2.0 Programming)

 

Tujuan

Memberikan konsep-konsep dasar pada pemrograman C# seperti Konsep OOP, penggunaan objek-objek koleksi dan materi yang lain, detailnya dapat dilihat pada bagian detail.

 

Keterangan

  • Jumlah pertemuan : 12x
  • Total waktu training : 30 jam
  • Jumlah jam per pertemuan : 2,5 jam
  • Jadwal pertemuan dapat diatur kemudian bisa 2x atau 3x seminggu, hari dan jam disesuaikan dengan peserta kelas dan pengajar.
  • Alternatif lain adalah dengan workshop model yaitu memadatkan pertemuan menjadi 4x pertemuan, per petemuan 7,5 jam selama 2 minggu (hari sabtu dan minggu)
  • Peserta dapat membawa notebook sendiri atau menggunakan komputer yang disediakan.

 

Hands-On Modul

  • Setiap peserta akan mendapatkan modul pelatihan

 

Software Requirement

  • Windows XP SP2 atau Vista
  • Visual Studio 2005 / 2008
  • Visual C# Express 2005 / Visual C# Express 2008

 

Materi Training

  • Aplikasi Pertama dengan C#
    • Pengenalan .NET Framework
    • Pengenalan Visual Studio
    • Debugging Application
    • Aplikasi pertama (Hello World)
  • Variables dan Data Types
    • Pengenalan Variables dan Data Types
    • Mengkonversi satu tipe data ke tipe data yang lain
    • Bekerja dengan Operators
  • Menggunakan .NET Framework
    • Generating Random Numbers
    • Mengambil informasi dari Computer
    • Bekerja dengan XML
    • Bekerja dengan File I/O
    • Bekerja dengan Strings
    • Bekerja dengan Dates and Times
  • Branching dan Flow Control
    • Conditional Branching
    • Repeating Code Blocks
    • Other Control Flow Statements
  • Classes dan Objects
    • Pengenalan Objects dan Classes
    • Membuat object Class anda sendiri
    • Value Types vs. Reference Types
    • Object Lifetime (Disposal and Deterministic Finalization)
    • Instance Members
  • Object Properties dan Methods
    • Bekerja dengan Properties
    • Calculating Values for Properties
    • Memvalidasi nilai dalam Properties
    • Passing Arguments ke Properties
    • Bekerja dengan Methods
    • Passing Arguments ke Methods
    • Mengembalikan Arrays
    • Bekerja dengan Instance Members
  • Object-Oriented Techniques
    • Inheritance
    • Polymorphism
    • The Real Base Class: System.Object
    • Overriding Properties and Methods
    • Abstract Classes
    • Implementing and Creating Interfaces
    • Organizing Classes
  • Arrays
    • Pengenalan System.Array
    • Menginisialisasi Arrays
    • Iterating Through Arrays
    • Array methods
    • Passing Arrays sebagai Method Parameters
    • Multi-Dimensional Arrays
    • Membuat Array Indexers
  • Generics
    • Understanding Generics
    • Generic Types dan Classes
    • Calling Generic Procedures
    • Generic Constraints
  • Collection Classes
    • Collection Interfaces
    • The Generic List
    • Constraints dan Lists
    • Sorting Collections
    • Queues and Stacks
    • Hash Tables dan Dictionaries
  • Exceptions
    • Menambahkan Try/Catch Block
    • Using dan Exception Object
    • Catching Specific Exceptions
    • Raising Errors
    • Handling Unhandled Exceptions
    • Creating Exception Classes
  • Delegates dan Events
    • Pengantar Events
    • Interfaces vs. Delegates
    • Delegates sebagai Type-Safe Function Pointers
    • Event Handlers sebagai Delegate Instances

fungsi split di delphi

function split(input: string; schar: Char; s: Integer): string;
var
  c: array of Integer;
  b, t: Integer;
begin
  Dec(s, 2);  // for compatibility with very old & slow split function
  t := 0;     // variable T needs to be initialized...
  setlength(c, Length(input));
  for b := 0 to pred(High(c)) do 
  begin
    c[b + 1] := posex(schar, input, succ(c[b]));
    // BREAK LOOP if posex looped (position before previous)
    // or wanted position reached..
    if (c[b + 1] < c[b]) or (s < t) then break 
    else 
      Inc(t);
  end;
  Result := Copy(input, succ(c[s]), pred(c[s + 1] - c[s]));
end;

penggunaan:
SPLIT(‘this is a test ‘,’ ‘,3) = ‘is’
SPLIT(‘data;another;yet;again;more;’,’;’,4) = ‘yet’

Check if a file is text or binary in Delphi?

function IsTextFile(const sFile: TFileName): boolean;
//thanks to Marcelo Castro - from Brazil

var
 oIn: TFileStream;
 iRead: Integer;
 iMaxRead: Integer;
 iData: Byte;
 dummy:string;
begin
 result:=true;
 dummy :='';
 oIn := TFileStream.Create(sFile, fmOpenRead or fmShareDenyNone);
 try
   iMaxRead := 1000;  //only text the first 1000 bytes
   if iMaxRead > oIn.Size then
     iMaxRead := oIn.Size;
   for iRead := 1 to iMaxRead do
   begin
     oIn.Read(iData, 1);
     if (idata) > 127 then result:=false;
   end;
 finally
   FreeAndNil(oIn);
 end;
end;

(* ----- Sample call ----- *)

procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
  if IsTextFile(OpenDialog1.FileName) then
  showmessage('is ascii')
  else showmessage('is BinaryFile')
  end;

end;

Penggunaan TXMLDoc di Delphi

saya mencoba menulis kembali sebuah unit tersendiri sehingga dapat digunakan untuk mengelola TXMLDoc dan dapat digunakan untuk menggantikan file .INI

unit uPenggunaanXml;

interface

uses
  Forms, SysUtils, Windows, XmlIntf, XMLDoc;

type
  TXMLConfig = class
  private
    FModified: Boolean;
    FFileName: string;
    FXMLDoc: TXMLDocument;
    FBackup: Boolean;
    function GetVersion: string;
  public
    constructor Create(const FileName: string); overload;
    constructor Create; overload;
    destructor Destroy; override;
    procedure Save;
    function ReadString(const Section, Key, default: string): string;
    procedure WriteString(const Section, Key, Value: string);
    function ReadInteger(const Section, Key: string; default: Integer): Integer;
    procedure WriteInteger(const Section, Key: string; Value: Integer);
    function ReadBoolean(const Section, Key: string; default: Boolean): Boolean;
    procedure WriteBoolean(const Section, Key: string; Value: Boolean);
    property Backup: Boolean read FBackup write FBackup;
    property Version: string read GetVersion;
  end;

implementation

{ TXMLConfig }

constructor TXMLConfig.Create(const FileName: string);
begin
  inherited Create;
  FBackup         := True;
  FFileName       := FileName;
  FXMLDoc         := TXMLDocument.Create(Application);
  FXMLDoc.Options := [doNodeAutoIndent];
  if FileExists(FFileName) then
    FXMLDoc.LoadFromFile(FFileName)
  else
  begin
    FXMLDoc.Active := True;
    FXMLDoc.AddChild('Configuration');
  end;
end;

constructor TXMLConfig.Create;
begin
  Create(ChangeFileExt(Application.Exename, '_cfg.xml'));
end;

destructor TXMLConfig.Destroy;
begin
  Save;
  FXMLDoc.Destroy;
  inherited;
end;

function TXMLConfig.GetVersion: string;
begin
  Result := '1.00';
end;

function TXMLConfig.ReadBoolean(const Section, Key: string; default: Boolean): Boolean;
begin
  Result := Boolean(ReadInteger(Section, Key, Integer(default)));
end;

function TXMLConfig.ReadInteger(const Section, Key: string; default: Integer): Integer;
begin
  Result := StrToInt(ReadString(Section, Key, IntToStr(default)));
end;

function TXMLConfig.ReadString(const Section, Key, default: string): string;
var
  Node: IXMLNode;
begin
  Node := FXMLDoc.DocumentElement.ChildNodes.FindNode(Section);
  if Assigned(Node) and Node.HasAttribute(Key) then
    Result := Node.Attributes[Key]
  else
    Result := default;
end;

procedure TXMLConfig.Save;
begin
  if not FModified then
    Exit;
  if FBackup then

    CopyFile(PChar(FFileName), PChar(FFileName + '.bak'), False);
  FXMLDoc.SaveToFile(FFileName);
  FModified := False;
end;

procedure TXMLConfig.WriteBoolean(const Section, Key: string; Value: Boolean);
begin
  WriteInteger(Section, Key, Integer(Value));
end;

procedure TXMLConfig.WriteInteger(const Section, Key: string; Value: Integer);
begin
  WriteString(Section, Key, IntToStr(Value));
end;

procedure TXMLConfig.WriteString(const Section, Key, Value: string);
var
  Node: IXMLNode;
begin
  if ReadString(Section, Key, '') = Value then
    Exit;
  Node := FXMLDoc.DocumentElement.ChildNodes.FindNode(Section);
  if not Assigned(Node) then
    Node := FXMLDoc.DocumentElement.AddChild(Section);
  Node.Attributes[Key] := Value;
  FModified := True;
end;

end.

Semoga membantu…

Paging Halaman Menggunakan PHP

Artikel kali ini akan membahas bagaimana caranya untuk paging halaman menggunakan PHP. Jika anda pernah membuat aplikasi dengan menggunakan php maka anda mungkin pernah menampilkan data news atau produk dalam halaman, jika jumlah news atau product yang ditampilkan puluhan atau bahkan ratusan maka jika ditampilkan hanya dalam satu halaman akan menyulitkan user dalam melihat atau mencari data yang diinginkan.

Solusi yang dapat digunakan untuk menyelesaikan masalah ini adalah dengan menggunakan paging, dengan paging maka anda dapat menampilkan content per jumlah yang anda inginkan (tidak harus semua content ditampilkan). Misal dalam aplikasi contoh yang saya buat akan ditampilkan berita yang diambil dari tabel berita didatabase, berita tersebut akan ditampilkan per 3 berita dalam satu halaman. Adapu kode lengkapnya sebagai berikut:

Pertama buat variabel halaman yang akan menampung nilai halaman ke berapa yang akan ditampilkan

$hal = $_GET[hal];

if(!isset($_GET['hal'])){ 
    $page = 1; 
} else { 
    $page = $_GET['hal']; 
} 

Continue reading