Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

S İ STEM YÖNET İ C İ S İ K İ MD İ R? Bilgi teknolojileri(Information Technologies) ortamının oluşturulması ve yaşatılmasından sorumlu kişidir.

Benzer bir sunumlar


... konulu sunumlar: "S İ STEM YÖNET İ C İ S İ K İ MD İ R? Bilgi teknolojileri(Information Technologies) ortamının oluşturulması ve yaşatılmasından sorumlu kişidir."— Sunum transkripti:

1 S İ STEM YÖNET İ C İ S İ K İ MD İ R? Bilgi teknolojileri(Information Technologies) ortamının oluşturulması ve yaşatılmasından sorumlu kişidir.

2 Sistem Yöneticisi Sorumlulukları Araştırma Tedarikçilerle Görüşme Tedarik Kabul Kurulum Ayarlama Bakım Yineleme/Çekilme

3 Sistem Yöneticisi Yürütülen İ şler Son Kullanıcı Deste ğ i ◦ Yardım masası ◦ Bilgisayar(Laptop/Masaüstü) kurulması ◦ Birime gelen problemler Özel kurulumlar ◦ Yeni başlayan veya mevcut projeler için gerekli olan yeni kurulumların yapılması Araştırma-Tedarik ◦ Yeniliklerin takip edilmesi ve iyileştirilmesi Alt yapı deste ğ i ◦ Sunucular, email, web, güvenlik etc… ◦ Merkezi depolama ve kullanıcı yönetimi ◦ A ğ altyapısı

4 Sistem Yöneticisi Yürütülen İ şler ◦ Di ğ erleri;  Personel yönetimi  BT’yi etkileyen di ğ er çevre etkilerin yönetilmesi(Yapı işleri, elektrik da ğ ıtıcı vb..)  Halkla ilişkiler, tanıtım, toplantılara katılım, bölümün reklamı  Maddi desteklerin takip edilmesi  Kullanıcı ve personel e ğ itimleri  Bütçe yönetimi  Dokumantasyon  Planlama(taktik ve stratejik)

5 Di ğ er Sistemler ve Yöneticileri ◦ A ğ Yönetimi ◦ Veri Tabanı Yönetimi(DBA) ◦ Güvenlik Yönetimi(Security Admin) ◦ Geliştirme Yönetimi (DevOps) ◦ Alan Bazlı Yönetimler  HPC  Büyük Veri  ERP

6 Sistem Yöneticili ğ i Size Uygun mu? Sürekli yeni şeylerle u ğ raşmaktan hoşlanırım Spontane yaşayan ve yeniliklere açık bir yapım vardır ve büyük ve ani yenilikleri kolay adapte ederim. Aynı anda birden fazla işle u ğ raşabilirim ve etraftan gelen, işimi bölmelere dayanıklıyımdır. De ğ işik kişilerdeki iş arkadaşları ile çalışabilirim Baskı altında çalışabilirim Çalışma saatler esnektir

7 Hangi yetenekler «Sert» yetenekler (Hard Skills) ◦ Donanım ve yazılım konusunda gelişmeye açık olmak ◦ Birden fazla işletim sistemine aşına olmak ◦ Sunucu veya istemci kurulumu ve konfigürasyonu ◦ Bilgisayar a ğ larının nasıl çalıştı ğ ını bilmek ◦ Betik programlama(Scripting)

8 Hangi yetenekler «Yumuşak» yetenekler (Soft Skills) ◦ İ letişimi kuvvetli olmak  Yazılı  Sözlü  Teknik bilgilerin iletilmesi sanılandan daha zor bir iştir ◦ Uyumlu bir kişilik  Her şey de ğ işiyor(teknoloji, insanlar, yönetim vs) bunlara uyum sa ğ layabilmek

9 Hangi yetenekler «Yumuşak» yetenekler (Soft Skills) ◦ Sabırlı, merhametli ve toleranslı olabilmek  Son kullanıcıların mantıksız ve anlaşılmaz olabilirler  Kendinizi onların yerine koyun ◦ Kendinizi motive edin(self motivation)  Genelde bütün kullanıcılar bir şeyin yanlış oldu ğ unu söylemek için sizi arar, her şey mükemmel çalışırken kimse sizin farkında de ğ ildir  Kimse size ne ö ğ renmeniz gerekti ğ ini söylemez.

10 Ne okumalı? Sistem yöneticisi yetiştiren bir bölüm yoktur! ◦ Bazı bölümler yardımcı olur.

11 E ğ itimdeki hedefler İ şe yarayabilecek bazı dersler(sistem) ◦ A ğ ◦ A ğ programlama ◦ A ğ güvenli ğ i ◦ İ şletim sistemleri ◦ Veri güvenli ğ i(Crptography) ◦ Web Programlama ◦ Da ğ ıtık/Paralel Sistemler ◦ Veri tabanı

12 S İ STEM Sistem, bir hedef veya amacı gerçekleştirmek üzere bir arada çalışan birbiriyle ilişkili parçalardan oluşan ve girdi-çıktıları olan sınırları belirlenmiş bir bütündür. Sistem tanımında üç temel kavram vardır: Bileşen, İ lişki, Amaç

13 1.1.Sistemin Özellikleri Ayrıca sistemler, çıktıları kontrol etme ve ölçme de ğ erlendirme yoluyla girdiler ve sistem üzerinde iyileştirme yapmak için geri beslemeye sahiptir.(feed-back) Girdi----- İ şlem------çıktı  FEED-BACK

14 1.2.Genel Sistem Teorisi Genel sistem teorisiyle sistemlerde belirlenen özellikler, bilgi sistemlerinin yapısının da anlaşılmasına olanak sa ğ lar. Genel sistem teorisinin başlıca özellikleri; Sistemler, girdileri çıktılara dönüştürür. Sistemler disiplinler arasıdır. Bir bilim dalında bulunan ürün, kural ya da yöntem başka bir bilim dalında kullanılabilir. Sistemler hiyerarşiktir.

15 Bilgi Sistemi Tarafları Sistem geliştirme yaşam döngüsü içinde farklı konumlardaki bireyler birarada çalışmaktadır. Bir bilgi sisteminin tarafları, Kullanıcı Yönetici Programcı Bilgi sistem destek personeli Sistem analisti

16 Bilgi Sistemi Tarafları Kullanıcı Sistem analistleri ve tasarımcıları tarafından yapılan genel bir yanılgı ile bütün müşteriler aynı kategoriye konulmamalıdır. Her kullanıcının bilgisayar bilgisi ve deneyimi olmadı ğ ı gibi görev ve sorumlulukları sonucu kullanacakları sisteme yaklaşımları da farklı olacaktır

17 Bilgi Sistemi Tarafları Yönetici Geliştirilen sistemin büyüklü ğ üne göre yöneticiyi; Proje yöneticisi Üst düzey(işletme) yöneticisi İ ki farklı açıdan elle almak mümkündür. Büyük ölçekli projelerde, projenin uzun süreli başarıya ulaşması için gerekli kriterlerin belirlenmesinden ve proje ekibinin idaresinden proje yöneticisi sorumludur.

18 Bilgi Sistemi Tarafları Programcı Analist ve programcının sistem geliştirme yaşam döngüsündeki görevleri tam olarak ayrılmıştır. Zamanla yarışan ve giderek daha karmaşık yapıya sahip olan programların söz konusu oldu ğ u günümüzde ise daha çok CASE(Computer aided software engineering) araçları kullanılarak kodun büyük bölümü otomatik olarak üretilmektedir. Ancak CASE araçlarının programcının yerini tam olarak aldı ğ ı söylenemez. Kod üreticileri sayesinde programcılar, zamanlarını optimizasyona ve üretilen kodun sisteme entegrasyonuna ayırmaktadırlar.

19 Bilgi Sistemi Tarafları Bilgi Sistem Destek Personeli(Operasyonel Personel) Sistemin süreklili ğ ii sa ğ lamak amacıyla a ğ iletişiminden, donanımdan, veri güvenli ğ inden ve ilgili bilgisayar programlarını çalışmasından çıktıların düzenlenmesine kadar birçok konuda deste ğ in verilmesinden sorumludur. Sistem analisti, sistemin tarafları arasında anahtar rolü üstense de sistemin başarılı olması tek başına sistem analistine ba ğ lı de ğ ildir.

20 Sistem Analistinin Beceri ve Görevleri Genel olarak sistem analistinin hem işletme yönetimi hem de bilgi sistemleri konusunda bilgi sahibi olması beklenir. Böylece sistem analisti, işletmenin karşılaştı ğ ı sorunları ve karşılaştı ğ ı iş fırsatlarını fark ederek bilgi sistemindeki ihtiyaçlarını belirlenmesini ve iş akışının oluşturulacak bilgi sistemine yansımasını kolayca sa ğ lamaktadır.

21 Sistem Analistinin Beceri ve Görevleri Sistem analisti, çözümü ortaya koyarken müşteri ihtiyaç ve isteklerini belirlemelidir.

22 Nesne Yönelimli Programlama Giriş Nesne Yönelimli Programlama yaklaşımı 1960’lı yılların sonuna do ğ ru ortaya çıkmıştır. O dönemde yazılım dünyasında karşılaşılan sorunlara çözüm olması amacıyla geliştirilmiştir. Yazılımların kapsamı, içeri ğ i ve karmaşıklı ğ ı ile birlikte boyutları da sürekli artış gösteriyordu. Bu artış ile beraber, yazılan kodu hızlı bir şekilde gelişime açık ve esnek tutmak için gereken bakım maliyeti, zaman ve çaba da artmaktaydı. Nesne Yönelimli Programlama, bu sorunlara bir çözüm olarak geliştirilmiştir.

23 Nesne Yönelimli Programlama Çözümleri Kapsülleme(encapsulation), kalıtım(inheritance) ve çok biçimlilik(polymorphism) gibi yazılımın bakımını ve aynı yazılım projesi üzerinde ekip çalışmasını kolaylaştıran kavramları da yazılım dünyasına kazandırmıştır. Sa ğ ladı ğ ı bu avantajlardan dolayı Nesne Yönelimli Programlama, günümüzde geniş çaplı yazılım projelerinde yaygın bir biçimde tercih edilip kullanılmaktadır.

24 Nesne Tabanlı Programlama Dilleri Nesne tabanlı programlama dilleri, nesne kullanımını desteklemelerine ra ğ men, kalıtım gibi nesne yönelimli programlama dillerine özgü özgü özellikleri taşımazlar. Nesne yönelimli programlama dillerine örnek olarak; ABAP/4, Simula, Smalltalk, C++, Object Pascal, Objective-C, Eiffel, Python, Java, C Sharp, Visual Basic.Net ve RealBasic’i sayabiliriz. Nesne tabanlı olup da nesne yönelimli olmayan programlama dilleri, nesne ve sınıfları desteklese de kalıtımdan yoksundur.

25 Nesne Yönelimli Programlamanın Faydaları Nelerdir? Parçalar Halinde Programlama Nesne Yönelimli Programlamada bir problemin çözümü parçalara ayrılarak ele alınabilir. Burada her bir parçanın ayrı bir sınıf oldu ğ u söylenebilir. Nesnelerin de sınıflar sayesinde yaratıldıklarını zaten biliyorsunuz.

26 Nesne Yönelimli Programlamanın Faydaları Nelerdir? Gerçek Hayat Nesneleriniş Uygulamaya Taşıma ve Düzenli Kodlama Sınıflar ve nesneler, gerçek hayat problemlerini bilgisayar ortamına taşımada kolaylıklar sa ğ lar. İ stedi ğ imiz her şeyi nesne olarak tanımlayarak üzerinde işlem yapabiliriz. Ayrıca sınıflar, kodlarımızın düzenli bir biçimde durmasını da sa ğ lar. Bu sayede, program üzerinde yapılacak olan de ğ işiklikler için zaman kaybı olmaz.

27 Nesne Yönelimli Programlamanın Faydaları Nelerdir? Bir Kere Kodlayıp Defalarca Kullanma Nesne yönelimli programlamanın özelliklerinden birisi de bir defa kodladıktan sonra, aynı işlemleri tekrar kodlamamaktır. Yani çok sık kullanaca ğ ımız bir işlevi her kullanışımızda tekrar yazmak yerine o işlevi bir sınıf haline getirerek yeri geldi ğ inde sınıfın nesnesini ça ğ ırarak, ihtiyaç duyulan işlevi rahatlıkla kullanabiliriz. Böylelikle projede harcanacak toplam mesai de kısalmış olur.

28 Prosedürel Yaklaşıma Örnek Fortran, Pascal ve C, prosedürel yaklaşımı esas alan programlama dillerinden bazılarıdır.

29 Prosedirel Programlama Yaklaşımında Sınırlamalar Yazılım geliştirme mühendislerini daha iyi bir yol aramaya iten bu sınırlamaları, iki temel başlık altında ele alabiliriz. Tekrar Kullanılmama Prosedürel programlama yaklaşımında prosedürler, uygulama içersinde bir defa yazılıp istenilen yerlerde ça ğ rılırlar. Ancak bir uygulamaya ait prosedürler, başka bir uygulama tarafından kullanılamazlar. Çünkü kod parçaları birbirlerine ba ğ lıdır ve belirli bir seriyi takip eder.

30 Prosedirel Programlama Yaklaşımında Sınırlamalar Kolay De ğ iştirilmeme Prosedürel yaklaşım kullanılarak geliştirilen büyük bir uygulama kolayca modifiye edilemez. Yazılan bütün kodlar birbirlerine sıkı sıkı ba ğ lıdır ve bir yerde yapılan de ğ işikli ğ in, uygulamanın bir çok yerine etkilerini ele almak gerekir. Oysa bir yazılım uygulamasının dinamik ihtiyaçlara cevap verebilmesi, de ğ işiklikleri sessizce yansıtabilmesi gerekmektedir

31 Nesne Yönelimli Dillerin Evrimi Algol-Simula-Smalltalk-C with Classes(C++)-OAK, Java

32 Nesne Yönelimli Dillerin Evrimi Algol Algol(ALGOrithmic Language), 1950’lerin ortalarında Fortan dilindeki problemleri gidermek için dizayn edilen bir dildir. Bunun yanında Algol, Pascal gibi bazı dillerin ortaya çıkmasında rol oynamıştır. ALGOL köşeli parantezli ifade bloklarını kullanır. Ayrıca onları sınırlandırmak için BEGIN END bloklarını kullanan ilk programlama dilidir.

33 Nesne Yönelimli Dillerin Evrimi Simula Hemen hemen bütün nesne tabanlı ve Nesne yönelimli dillerin atası 1960’larda geliştirilen Simula dilidir. Simula ALGOL fikri üzerine inşa edilmiş bir dildir; ancak kapsülleme(encapsulation) ve kalıtım(inheritance) konsetlerini eklemiştir. Belki daha da önemlisi, karmaşık sistemleri tanımlama ve simülasyon geliştirme dili olarak kullanılan Simula’nın, programlama dünyasını spesifik problem alanına özel kod yazma disiplini ile tanıştırmasıdır

34 Nesne Yönelimli Dillerin Evrimi Smaltalk Simula, Smaltalk dilinin birincil esin kayna ğ ıdır. Bu fikir sonraları farklı geliştirmeler ile desteklenmiştir. Smaltalk hem bir dili hem de bir uygulama geliştirme ortamını temsil eder. Saf nesne yönelimli bir dil olan Smaltalk dilinde her şey bir nesne olarak ele alınır. Smaltalk, günümüzde yaygın olmasa da kendisini takip eden bütün nesne yönelimli diller onun konseptinden etkilenmiştir. Bu yüzden önemli bir kilometre taşıdır.

35 Nesne Yönelimli Dillerin Evrimi C with Classes(C++): Orijinal adı C with Classes olan C++ dili; Bjarne Stroustrup adlı bir akademisyen tarafından, doktora tezinde uygulama geliştirirken karşılaştı ğ ı sorunlardan yola çıkarak 1979’da geliştirilmeye başlanmış, 1985’de ilk versiyonu yayınlanmıştır. Bu yeni dilin geliştirilme aşamasında başta C ve Simula olmak üzere ALGOL 68, Ada gibi dillerden esinlenmiştir. Genellikle C dilinin daha gelişmiş hali olarak nitelendirilir.(Tip Kontrolü, Aşırı yüklenmiş fonksiyonlar, statik fonksiyonlar, abstract sınıf, protected üyeler gibi dil yenilikleri gelmiştir).

36 Nesne Yönelimli Dillerin Evrimi OAK Doksanlı yılların hemen başında, Sun Microsystems çalışanlarından James Gosling ve küçük grubu; e ğ lence platformları, mikrodalga fırınlar vb. dijital olarak kontrol edilen tüketici aletleri için ileri seviye uygulamalar geliştiriliyorlardı. Bu programları C++ ile yazmak zor oldu ğ u için 1991 yılında OAK adı verilenn bir dil oluşturdular.

37 Nesne Yönelimli Dillerin Evrimi Java Geliştirme aşamasında OAK, genel amaçlı bir programlama dili haline geldi ve 1995 yılında adı de ğ iştirilerek Java 1.0 sürümü ile duyuruldu. “Write Once, Run Anywhere”(Bir kez yaz, her yerde çalıştır) yani platform ba ğ ımsız uygulama geliştirmek hedefinde olan Java dilinin esas hedefi, yaygınlaşan internet erişimine ayak uydurarak web uygulamalarının kolayca geliştirilece ğ i bir platform haline gelmekti. Java teknolojisi ile uygulama geliştirmek ve çalıştırmak için Java Virtual Machine kullanılması gereklidir ve derlenen kaynak kodlar, platform ba ğ ımsızlık hedefi için Java Byte Code adında ortak bir ara dile dönüştürülmektedir.

38

39

40

41

42 Programlamada Nesneler Nesne, bir varlık ya da konsepti programatik olarak açıklayan soyut bir ifadedir. Nesneler, kendi özellikleri ve davranışları hakkında da bilgi bilgi barındırırlar. Nesneler, hem daha ileride kişisel kullanım için, hem de başka programcıların kullanması için hazırlanabilirler. Başka bir programcının bizim hazırladı ğ ımız nesneyi kullanarak işlem yapması durumunda, bu programcıya nesne kullanıcısı denir.

43 Programlamada Nesneler Windows formu üzerine yerleştirilen metin kutusu(TextBox), liste kutusu(ListBox), buton(Button) vb. sayısız kontrollerin de birer nesne oldu ğ unu biliyorsunuz. Microsoft geliştiricileri, bu kontrolleri biz uygulama geliştiricilerin kullanabilmeleri için yazmışlardır. Bir geliştirici, bu kontrollerin belli işleri yapabildi ğ ini bilir.

44 Sınıf Programlama yaparken sınıf ve nesne kavramlarının birbirinden ayırt edilmesi gerekir. Sınıf, bir nesnenin tanımıdır;davranışlarını yansıtan karakteristiklerin ve nesnede olması gereken özelliklerin neler oldu ğ unu belirleyen bir şablondur.

45 Sınıf

46

47

48 Alanlar, Metotlar, Erişim Belirleyicileri

49

50 Alanların Varsayılan De ğ erleri

51 namespace SinifKullanimi { class Televizyon { public int ekran; public string marka; public bool lcdMi; } class Program { public static void Main() { Televizyon tv = new Televizyon(); //0 de ğ erini almıştır. Console.WriteLine("tv.ekran : {0}", tv.ekran); //boş (null) de ğ er almıştır. Console.WriteLine("tv.marka : {0}", tv.marka); //false de ğ er almıştır. Console.WriteLine("tv.lcdMi : {0}", tv.lcdMi); }

52 Varsayılan De ğ erler ve Lokal De ğ işkenler Bir tip üyesi içersinde tanımlanan lokal de ğ işken için ise senaryo oldukça farklıdır. Bir lokal de ğ işken tanımlandı ğ ında, kullanılması için öncelikle ona bilinçli olarak de ğ er ataması yapılması gerekir. Yani lokal de ğ işkenlerde varsayılan de ğ er ataması söz konusu de ğ ildir.

53 Varsayılan De ğ erler ve Lokal De ğ işkenler Örne ğ in; Aşa ğ ıdaki kod blo ğ u derleme zamanı hatası ile sonuçlanır.

54 Varsayılan De ğ erler ve Lokal De ğ işkenler

55 NOT: Lokal de ğ işkenleri kullanmak için başlangıç de ğ eri verilmesi zorunlulu ğ unun Geçerli olmadı ğ ı tek bir istisna durum vardır: E ğ er lokal de ğ işken bir metoda Output parametresi olarak aktarılmak üzere kullanılırsa, başlangıç de ğ er ataması Yapılmasına gerek yoktur. Çünkü zaten metot içersinde kendisine mutlaka bir De ğ er atanmak zorundadır.

56 Nesne Alanlarına Erişmek Bir nesne alanına sadece kendisini içeren sınıf nesne örne ğ i üzerinden erişilebilir. Do ğ rudan sınıf adına erişilmez. Bu da gösteriyor ki bir alanla çalışabilmek için öncelikle nesne örne ğ inin belle ğ e çıkarılmış olması gerekir

57 Nesne Alanlarına Erişmek namespace SinifKullanimi { class Program { public static void Main(string[] args) { Oyuncu o1 = new Oyuncu(); o1.adi = "Emre"; o1.takimi = "Newcastle United"; o1.formaNo = 5; FormaDegistir(o1, 9); Console.WriteLine("{0} {1}, {2}", o1.formaNo, o1.adi, o1.takimi); Console.ReadLine(); } static void FormaDegistir(Oyuncu oyuncu, int yeniNo) { oyuncu.formaNo = yeniNo; }

58 Nesne Alanlarına Erişmek Yukarıdaki kodda öncelikle bir Oyuncu nesnesi örneklenmektedir. Ardından her bir alanın de ğ eri verilir, forma numarasının de ğ iştirilmesi için FormaDegistir() metodu ça ğ rılır. Son olarak o1 referansının işaret etti ğ i Oyuncu nesnesi ile ilişkili olan her bir alanın de ğ eri ekranda gösterilir. Görüldü ğ ü gibi bir alana de ğ eri verilmeden önce Oyuncu nesnesine ihtiyaç duyulmaktadır. Dolayısıyla alanlara de ğ er atanırken ve de ğ erlerine erişilirken o1 de ğ işkeni, alan isimlerinin ön eki gibi kullanılmaktadır.

59 Yapıcı Metotlar(Constructor) C# gibi nesne yönelimli dillerin en büyük avantajlarından birisi, bir sınıf nesne örne ğ i oluşturuldu ğ u anda otomatik olarak ça ğ rılan özel bir metodun tanımlanabilmesidir. Bu metoda yapıcı(constructor) adı verilir. Varsayılan yapıcı metot, nesne içerisinde belle ğ e çıkarılacak olan bütün alanların do ğ ru varsayılan de ğ erleri almasını sa ğ lar. Peki nesne oluşturuldu ğ u anda ça ğ rılan yapıcı metoda isim olarak ne verilir de derleyicinin bu işi otomatik olarak yapması sa ğ lanır. C# dilinde kullanılan yapıcı metotlar, bulundukları sınıfla aynı isimdedirler.

60 Yapıcı Metotlar(Constructor)

61


"S İ STEM YÖNET İ C İ S İ K İ MD İ R? Bilgi teknolojileri(Information Technologies) ortamının oluşturulması ve yaşatılmasından sorumlu kişidir." indir ppt

Benzer bir sunumlar


Google Reklamları