Espresso ile Android Uygulama Testi

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Espresso ile Android Uygulama Testi"

Transkript

1 Espresso ile Android Uygulama Testi Kadir ŞEN 1

2 İçindekiler Espresso Nedir?... 3 Espresso Paketleri :... 3 Espresso yu hazır hale getirme... 7 Android Studioda test yapılandırılması oluşturma Komut satırından Gradle yoluyla Birkaç temel Espresso komutu: Örnek : 1. Espresso Testi Espresso Testlerini çalıştırma: Sık kullanılan Android Studio metotları ve test önekleri Genel olarak login metot tasarımı ACTİON BAR UYGULAMA CUSTOM LİST TEST DATE TİME PİCKER TEST DİALOG TESTS(MESAJ EKRANI) ENTERNAME TEST SEARCH VİEW TEST SPİNNER SELECTİON TEST VİEW PAGER TEST

3 Espresso Nedir? Esprossa, güvenilir kullanıcı arabirimi testleri yazmak için Android in bir test aracıdır. Google tarafından 2013 de piyasaya sürülmüştür. 2.0 sürümünden beri Android in test destek aracıdır. Espresso, test hareketlerinizi geliştirmiş olduğunuz uygulamanızın kullanıcı arabirimi ile otomatik olarak senkronizasyonunu gerçekleştirir. Espresso testleri Android (API seviyesi 10) ve üstünü çalıştıran cihazlarda çalışabilir. Espresso Paketleri : Espresso-core - Çekirdek ve temel Görünüm eşleştiriciler, eylemler ve onaylamaları içerir. Espresso-web - WebView desteği için kaynakları içerir. Espresso-idling-resource - Espresso'nun arka plandaki işlerle senkronizasyon mekanizması. Espresso-contrib - DatePicker, RecyclerView ve Drawer eylemleri, Erişilebilirlik denetimleri ve CountingIdlingResource içeren dış katkı. Espresso-İntents- Hermetik testler için Nitelikleri doğrulamak ve saplamak için uzatma. Espresso nun üç temel bileşeni vardır. onview(viewmatcher) 1.perform(ViewAction) 2.check(ViewAssertion); 3 1. Test etmek istediğimiz görünümü bulur. 2. Görünüm üzerinde bir işlem gerçekleştirir. 3. Bir onaylamayı doğrular. Aşağıdaki kod, Espresso test çerçevesinin kullanımını göstermektedir. 3

4 4 KADİR ŞEN

5 View Matchers da kullanılan kod parçaları 5

6 View Actions ve View Assertions ile beraber kulanılacak kod parçaları. 6

7 Espresso yu hazır hale getirme Espresso nun kurulması Espresso yüklemek için Android SDK Yöneticisini kullanın. Espresso için Gradle yapı dosyasının yapılandırması Bunları uygulamanızın build.gradledosyasına ekleyin // Android JUnit Runner androidtestcompile 'com.android.support.test:runner:0.5' // JUnit4 Rules androidtestcompile 'com.android.support.test:rules:0.5' // Espresso core 'com.android.support.test.espresso:espresso- androidtestcompile core:2.2.2' // Espresso-contrib for DatePicker, RecyclerView, Drawer actions, Accessibility checks, CountingIdlingResource 7

8 androidtestcompile 'com.android.support.test.espresso:espressocontrib:2.2.2' // Espresso-web for WebView support androidtestcompile 'com.android.support.test.espresso:espressoweb:2.2.2' // Espresso-idling-resource for synchronization with background jobs androidtestcompile 'com.android.support.test.espresso:espressoidling-resource:2.2.2' // Espresso-intents for validation and stubbing of Intents androidtestcompile 'com.android.support.test.espresso:espressointents:2.2.2' // UiAutomator androidtestcompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' LICENCE.txt dosyasının yapılandırılması apply plugin: 'com.android.application' android { compilesdkversion 22 buildtoolsversion '22.0.1' defaultconfig { applicationid "com.example.android.testing.espresso.basicsample" minsdkversion 10 targetsdkversion 22 versioncode 1 versionname "1.0" testinstrumentationrunner "android.support.test.runner.androidjunitrunner" packagingoptions { exclude 'LICENSE.txt' lintoptions { abortonerror false 8

9 dependencies { // as before... Cihaz Ayarları 9

10 Android Studioda test yapılandırılması oluşturma In Android Studio: Open Run menu -> Edit Configurations Add a new Android Tests configuration Choose a module Add a specific instrumentation runner: android.support.test.runner.androidjunitrunner Yeni oluşturulan yapılandırmayı çalıştırın. Komut satırından Gradle yoluyla gerçekleştirmek./gradlew connectedandroidtest Kurulum işlemi tamamlanmıştır fakat Android SDK nızın tamamen güncel olması gerekmektedir hata almamak için. Birkaç temel Espresso komutu: ViewActions.click(): Clicks on the view. ViewActions.typeText(): Clicks on a view and enters a specified string. ViewActions.scrollTo(): Scrolls to the view. The target view must be subclassed from ScrollView and the value of its android:visibilityproperty must be VISIBLE. For views that extend AdapterView (for example, ListView), the ondata() method takes care of scrolling for you. ViewActions.pressKey(): Performs a key press using a specified keycode. ViewActions.clearText(): Clears the text in the target view. If the target view is inside a ScrollView, perform the ViewActions.scrollTo() action first to display the view in the screen before other proceeding with other actions. The ViewActions.scrollTo() action will have no effect if the view is already displayed. 10

11 Örnek : 1. Espresso Testi Öncelikle Espresso Firs adıyla bir Android projesi oluşturuyoruz. Bu projede boş şablonu temel alıyoruz. Oluşturulan activity_main.xlm dosyasını aşağıdaki gibi değiştiriyoruz. <LinearLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" > <EditText android:id="@+id/inputfield" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:id="@+id/changetext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="new Button" android:onclick="onclick"/> <Button android:id="@+id/switchactivity" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="change Text" android:onclick="onclick"/> </LinearLayout> İkinci işlem olarak Activity_second.xml adlı yeni bir dosya oluşturun. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large Text" 11

12 /> </LinearLayout> Üçüncü işlem olarak aşağıdaki kodla yeni bir etkinlik oluşturuyoruz. package com.vogella.android.espressofirst; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.textview; public class SecondActivity extends protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_second); TextView viewbyid = (TextView) findviewbyid(r.id.resultview); Bundle inputdata = getintent().getextras(); String input = inputdata.getstring("input"); viewbyid.settext(input); Dördüncü adım olarak MainActivitiy sınıfımızı düzenliyoruz. package com.vogella.android.espressofirst; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.edittext; public class MainActivity extends Activity { EditText protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); 12

13 edittext = (EditText) findviewbyid(r.id.inputfield); public void onclick(view view) { switch (view.getid()) { case R.id.changeText: edittext.settext("lalala"); break; case R.id.switchActivity: Intent intent = new Intent(this, SecondActivity.class); intent.putextra("input", edittext.gettext().tostring()); startactivity(intent); break; Beşinci adım olarak Espresso Testinizi oluşturun. package com.vogella.android.espressofirst; import android.support.test.rule.activitytestrule; import android.support.test.runner.androidjunit4; import org.junit.rule; import org.junit.test; import org.junit.runner.runwith; import static android.support.test.espresso.espresso.onview; import static android.support.test.espresso.action.viewactions.click; import static android.support.test.espresso.action.viewactions.closesoftkeyb oard; import static android.support.test.espresso.action.viewactions.typetext; import static android.support.test.espresso.assertion.viewassertions.matches ; import static android.support.test.espresso.matcher.viewmatchers.withid; 13

14 import static public class MainActivityEspressoTest public ActivityTestRule<MainActivity> mactivityrule = new public void ensuretextchangeswork() { // Type text and then press the button. onview(withid(r.id.inputfield)).perform(typetext("hello"), closesoftkeyboard()); onview(withid(r.id.changetext)).perform(click()); // Check that the text was changed. onview(withid(r.id.inputfield)).check(matches(withtext("lalala public void changetext_newactivity() { // Type text and then press the button. onview(withid(r.id.inputfield)).perform(typetext("newtext"), closesoftkeyboard()); onview(withid(r.id.switchactivity)).perform(click()); // This view is in a different Activity, no need to tell Espresso. onview(withid(r.id.resultview)).check(matches(withtext("newtex t"))); Son olarak bütün ayarlamalarımız bitmiştir. Geldik testimizi çalıştırmaya 14

15 Espresso Testlerini çalıştırma: 15

16 Sık kullanılan Android Studio metotları ve test önekleri. Genel olarak login metot tasarımı. public class LoginActivity extends AppCompatActivity implements View.OnClickListener { private EditText username; private EditText protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_login); username = (EditText) findviewbyid(r.id.username); password = (EditText) findviewbyid(r.id.password); public void onclick(view v) { if (v.getid() == R.id.login) { Intent intent = new Intent(this, MainActivity.class); intent.putextra("name", username.gettext().tostring().trim()); intent.putextra("pwd", password.gettext().tostring().trim()); startactivity(intent); Tasarlamış olduğumuz Login ekranının TEST public class LoginActivityTest public ActivityTestRule<LoginActivity> mactivityrule = new ActivityTestRule<>( public void loginwithwrongpassword() {//login test onview(withid(r.id.username)).perform(typetext("android"), closesoftkeyboard()); onview(withid(r.id.password)).perform(typetext("wrong"), closesoftkeyboard()); onview(withid(r.id.login)).perform(click()); public void loginwithrightpassword() {//login test 16

17 onview(withid(r.id.username)).perform(typetext("android1"), closesoftkeyboard()); onview(withid(r.id.password)).perform(typetext("123456"), closesoftkeyboard()); onview(withid(r.id.login)).perform(click()); onview(withid(r.id.tvloginresult)).check(matches(withtext("kadirşen"))); 17

18 ACTİON BAR UYGULAMA blic ActionBarExampleTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testclickonmenuitem() { // Click on an item from ActionBar onview(withid(r.id.action_settings)).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("settings"))); public void testoverflowmenuoroptionsmenu() { // Open the action bar overflow or options menu (depending if the device has or not a hardware menu button.) openactionbaroverfloworoptionsmenu(getinstrumentation().getcontext()); 18

19 // Find the menu item with text "About" and click on it onview(withtext("about")).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("about"))); public void testactionmode() { // Show the contextual ActionBar onview(withid(r.id.toggle_action_mode)).perform(click()); // Click on a context item onview(withid(r.id.action_one)).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("actionmode1"))); Action Bar Test İşlemi public class ActionBarExampleTest extends ActivityInstrumentationTestCase2<ActionBarExampleActivity> { public ActionBarExampleTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testclickonmenuitem() { // Click on an item from ActionBar onview(withid(r.id.action_settings)).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("settings"))); public void testoverflowmenuoroptionsmenu() { // Open the action bar overflow or options menu (depending if the device has or not a hardware menu button.) openactionbaroverfloworoptionsmenu(getinstrumentation().getcontext()); // Find the menu item with text "About" and click on it onview(withtext("about")).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("about"))); 19

20 public void testactionmode() { // Show the contextual ActionBar onview(withid(r.id.toggle_action_mode)).perform(click()); // Click on a context item onview(withid(r.id.action_one)).perform(click()); // Verify the correct item was clicked by checking the content of the status TextView onview(withid(r.id.status)).check(matches(withtext("actionmode1"))); 20

21 CUSTOM LİST TEST public class CustomListTest extends ActivityInstrumentationTestCase2<CustomListActivity> { private static final String BOOK_TITLE = "Java Concurrency in Practice"; private static final String BOOK_AUTHOR = "Brian Goetz"; public CustomListTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testopenbookbyid() { // Click on the Book with ID 5 ondata(withbookid(5)).perform(click()); // Check the correct book title is displayed onview(withid(r.id.book_title)).check(matches(withtext(book_title))); // Check the correct author is displayed 21

22 onview(withid(r.id.book_author)).check(matches(withtext(book_author))); public void testopenbookbytitleandauthor() { // Match a book with a specific title and author name ondata(allof(withbooktitle(book_title), withbookauthor(book_author))).perform(click()); // Check the correct book title is displayed onview(withid(r.id.book_title)).check(matches(withtext(book_title))); // Check the correct author is displayed onview(withid(r.id.book_author)).check(matches(withtext(book_author))); public void testclickonbookbyposition(){ ondata(anything()).atposition(5).perform(click()); onview(withid(r.id.book_title)).check(matches(withtext(book_title))); onview(withid(r.id.book_author)).check(matches(withtext(book_author))); 22

23 DATE TİME PİCKER TEST public class DateTimePickerTest extends ActivityInstrumentationTestCase2<DateTimePickerActivity> { public DateTimePickerTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testsetdate() { int year = 2020; int month = 11; int day = 15; onview(withid(r.id.date_picker_button)).perform(click()); onview(withclassname(matchers.equalto(datepicker.class.getname()))).perform (PickerActions.setDate(year, month + 1, day)); onview(withid(android.r.id.button1)).perform(click()); 23

24 onview(withid(r.id.status)).check(matches(withtext(year + "/" + month + "/" + day))); public void testsettime() { int hour = 10; int minutes = 59; onview(withid(r.id.time_picker_button)).perform(click()); onview(withclassname(matchers.equalto(timepicker.class.getname()))).perform (PickerActions.setTime(hour, minutes)); onview(withid(android.r.id.button1)).perform(click()); onview(withid(r.id.status)).check(matches(withtext(hour + ":" + minutes))); 24

25 DİALOG TESTS(MESAJ EKRANI) public class DialogTests extends ActivityInstrumentationTestCase2<DialogExampleActivity> { public DialogTests() { protected void setup() throws Exception { super.setup(); getactivity(); public void testcheckdialogdisplayed() { // Click on the button that shows the dialog onview(withid(r.id.confirm_dialog_button)).perform(click()); // Check the dialog title text is displayed onview(withtext(r.string.dialog_title)).check(matches(isdisplayed())); public void testclickokbutton() { onview(withid(r.id.confirm_dialog_button)).perform(click()); // android.r.id.button1 = positive button 25

26 onview(withid(android.r.id.button1)).perform(click()); onview(withid(r.id.status_text)).check(matches(withtext(r.string.ok))); public void testclickcancelbutton() { onview(withid(r.id.confirm_dialog_button)).perform(click()); // android.r.id.button2 = negative button onview(withid(android.r.id.button2)).perform(click()); onview(withid(r.id.status_text)).check(matches(withtext(r.string.cancel))); 26

27 ENTERNAME TEST public class EnterNameTest extends ActivityInstrumentationTestCase2<EnterNameActivity> { public static final String USER_NAME = "John"; public static final String GREETING_MESSAGE = "Hello " + USER_NAME + "!"; public EnterNameTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testhintdisplayed() { onview(withid(r.id.name_edittext)).check(matches(withhint(r.string.enter_na me))); 27

28 public void testerrormessagedisplayed() { // Making sure the error message is not displayed by default onview(withid(r.id.error_text)).check(matches(not(isdisplayed()))); // Click on "Next" button onview(withid(r.id.next_button)).perform(click()); // Now check the error message is displayed onview(withid(r.id.error_text)).check(matches(isdisplayed())); public void testgreetingmessagewithnamedisplayed() { onview(withid(r.id.name_edittext)).perform(typetext(user_name)); onview(withid(r.id.next_button)).perform(click()); onview(withid(r.id.greeting_message)).check(matches(withtext(greeting_messa GE))); 28

29 SEARCH VİEW TEST public class SearchViewTest extends ActivityInstrumentationTestCase2<SearchViewActivity> { public static final String HELSINKI = "Helsinki"; public SearchViewTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testitemnotfound() { // Click on the search icon onview(withid(r.id.action_search)).perform(click()); // Type the text in the search field and submit the query onview(isassignablefrom(edittext.class)).perform(typetext("no such item"), pressimeactionbutton()); // Check the empty view is displayed onview(withid(r.id.empty_view)).check(matches(isdisplayed())); public void testitemfound() { onview(withid(r.id.action_search)).perform(click()); 29

30 onview(isassignablefrom(edittext.class)).perform(typetext(helsinki), pressimeactionbutton()); // Check empty view is not displayed onview(withid(r.id.empty_view)).check(matches(not(isdisplayed()))); // Check the item we are looking for is in the search result list. ondata(allof(is(instanceof(string.class)), withitemcontent(helsinki))).check(matches(isdisplayed())); public void testsearchsuggestiondisplayed() { onview(withid(r.id.action_search)).perform(click()); onview(isassignablefrom(edittext.class)).perform(typetext(helsinki), pressimeactionbutton()); // Go back to previous screen pressback(); // Clear the text in search field onview(isassignablefrom(edittext.class)).perform(cleartext()); // Enter the first letter of the previously searched word onview(isassignablefrom(edittext.class)).perform(typetext("he")); // Check the search suggestions appear onview(withtext(helsinki)).inroot(withdecorview(not(matchers.is(getactivity().getwindow().getdecorview()) ))).check(matches(isdisplayed())); public void testclickonsearchsuggestion() { onview(withid(r.id.action_search)).perform(click()); onview(isassignablefrom(edittext.class)).perform(typetext(helsinki), pressimeactionbutton()); // Go back to previous screen pressback(); // Clear the text in search field onview(isassignablefrom(edittext.class)).perform(cleartext()); // Enter the first letter of the previously searched word onview(isassignablefrom(edittext.class)).perform(typetext("he")); // Click on the "Java" item from the suggestions list onview(withtext(helsinki)).inroot(withdecorview(not(matchers.is(getactivity().getwindow().getdecorview()) ))).perform(click()); // Check the item appears in search results list. ondata(allof(is(instanceof(string.class)), withitemcontent(helsinki))).check(matches(isdisplayed())); 30

31 SPİNNER SELECTİON TEST public class SpinnerSelectionTest extends ActivityInstrumentationTestCase2<SpinnerSelectionActivity> { public static final String INVALID_COUNTRY_NAME = "NoSuchCountry"; public static final String VALID_COUNTRY_NAME = "Moldova"; public static final String FIRST_ITEM_TEXT = "Select your country"; public SpinnerSelectionTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testcountrynotinlist() { onview(withid(r.id.countries_spinner)).check(matches(not(withadapteddata(wi thitemcontent(invalid_country_name))))); public void testlabeldoesnotchangeiffirstitemselected() { // Click on the Spinner 31

32 onview(withid(r.id.countries_spinner)).perform(click()); // Click on the first item from the list, which is a marker string: "Select your country" ondata(allof(is(instanceof(string.class)))).atposition(0).perform(click()); // Check that the country label is not updated. onview(withid(r.id.country_label)).check(matches(not(withtext(first_item_te XT)))); public void testlabelupdatesifvalidcountryselected() { // Click on the Spinner onview(withid(r.id.countries_spinner)).perform(click()); // Select a country from the list ondata(allof(is(instanceof(string.class)), is(valid_country_name))).perform(click()); // Check that the country label is updated with selected country onview(withid(r.id.country_label)).check(matches(withtext(valid_country_nam E))); 32

33 VİEW PAGER TEST public class ViewPagerTest extends ActivityInstrumentationTestCase2<ViewPagerActivity> { private static final String BOOK_TITLE = "Clean Code"; private static final String BOOK_AUTHOR = "Robert C. Martin"; public ViewPagerTest() { protected void setup() throws Exception { super.setup(); getactivity(); public void testalltabdisplayedonswipe() { // Locate the ViewPager and perform a swipe left action onview(withid(r.id.pager)).perform(swipeleft()); // Check the "ALL BOOKS" text is displayed onview(allof(withid(r.id.header_text), isdisplayed())).check(matches(withtext("all BOOKS"))); public void testclickonbookfromnewtab() { // The below commented out line will fail with 33

34 AmbiguousViewMatcherException because the same ListView is used in both pages of ViewPager. // ondata(allof(withbooktitle(book_title), withbookauthor(book_author))).perform(click()); // We have to refine the query specifying that we are looking for an AdapterView that is currently visible. ondata(allof(withbooktitle(book_title), withbookauthor(book_author))).inadapterview(allof(isassignablefrom(adapterview.class), isdisplayed())).perform(click()); // Check the correct book title is displayed onview(withid(r.id.book_title)).check(matches(withtext(book_title))); // Check the correct author is displayed onview(withid(r.id.book_author)).check(matches(withtext(book_author))); 34

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME Hedefler Bu üniteyi çalıştıktan sonra; BaseAdapter yapısından miras alabilir, ListView bileşenine özel layout ve adapter oluşturabilir, WebView bileşenini kullanarak web sayfalarını

Detaylı

Android Kaynakları (Resources)

Android Kaynakları (Resources) Android Kaynakları (Resources) Android Resources (Kaynakları) res/drawable : çizim (resim) dosyalarının bulundu kaynak res/layout : layout (tasarım) dosyaları tanımlıdır res/menu : menu dosyalarını barındırır

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME Hedefler Bu üniteyi çalıştıktan sonra; Layout çeşitlerinin ve aralarındaki farkları açıklayabilir, Android projesinde farklı Laoyut kullanabilir, Android projesinde TextView,

Detaylı

Proje 1. Arayüz Tasarımı

Proje 1. Arayüz Tasarımı Proje 1. Arayüz Tasarımı 1. Yeni bir android projesi oluşturalım. Proje ismi: ArayuzTasarimi ve aktivity adı: ArayuzTasarimi olarak yazalım. 2. Projejiyi oluşturduktan sonra bize hazır olarak gelen dosyalar:

Detaylı

1 - Button Kontrolu Nasıl Yapılır?

1 - Button Kontrolu Nasıl Yapılır? 1 - Button Kontrolu Nasıl Yapılır? Graphical Layout Activity_main.xml

Detaylı

Listview Kullanımı. Aşağıdaki örnekte bir ListView'ı birkaç ülke ismiyle dolduracağız.

Listview Kullanımı. Aşağıdaki örnekte bir ListView'ı birkaç ülke ismiyle dolduracağız. Listview Kullanımı Mobil cihazlarda kullanıcılara birbiriyle ilişkili verileri listeyle vermek çok tercih edilen bir yöntemdir. Kullanıcı listedeki veriler içinde tek parmağıyla yukarı-aşağı sürükleme

Detaylı

Android ile SQLLite Veri Tabanı

Android ile SQLLite Veri Tabanı Android ile SQLLite Veri Tabanı Android de verileri SQLLite veritabanında tutmak için: Adım-1) File-New Project buradan projeye bir isim verelim ( örneğin: AndroidSQLite), Next ile bir sonraki adımda API

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME Hedefler Bu üniteyi çalıştıktan sonra; Android projesi oluşturabilir, Android projesini çalıştırabilir, Android projesi genel yapısını açıklayabilir, Activity kavramını açıklayabilir,

Detaylı

D-Link DSL 500G için ayarları

D-Link DSL 500G için ayarları Celotex 4016 YAZILIM 80-8080-8081 İLDVR HARDWARE YAZILIM 80-4500-4600 DVR2000 25 FPS YAZILIM 5050-5555-1999-80 EX-3004 YAZILIM 5555 DVR 8008--9808 YAZILIM 80-9000-9001-9002 TE-203 VE TE-20316 SVDVR YAZILIM

Detaylı

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek Yeni bir web sitesi tanımlamak, FTP ve Email ayarlarını ayarlamak için yapılması gerekenler Öncelikle Sol Menüden Create Virtual Server(Burdaki Virtual server ifadesi sizi yanıltmasın Reseller gibi düşünün

Detaylı

Görsel Komponentler. TextView. Metin değerlerini ekranda göstermek için kullanılır.

Görsel Komponentler. TextView. Metin değerlerini ekranda göstermek için kullanılır. Uygulamalarımızı tasarlarken gereksinim duyabileceğimiz görsel öğeler bize Google tarafından sağlanmıştır. Android SDK ile gelen ve layout dosyalarında kullanacağımız temel öğelerin bazıları şunlardır;

Detaylı

Android Ders Notları

Android Ders Notları Android Ders Notları 1. Yeni Bir Proje Başlatma Android Studio programında yeni bir proje başlatıyoruz. İlk olarak karşımıza resim 1 deki gibi bir pencere gelecek. Burada Application name kısmına proje

Detaylı

Bazı Akıllı Telefon Sensörleri

Bazı Akıllı Telefon Sensörleri Sensörler Bazı Akıllı Telefon Sensörleri Sensor.TYPE_ACCELEROMETER Telefon unuzun yatay, dikey ve yükseklik değişimlerini veren sensör dür.telefon unuzu düz konumdan sola doğru yatırınca yatay değer artmaya

Detaylı

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? İÇİNDEKİLER VII İÇİNDEKİLER 1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? 4 Kaynak Kodu 5 2 MERHABA DÜNYA 7 Android Nedir?

Detaylı

IDENTITY MANAGEMENT FOR EXTERNAL USERS

IDENTITY MANAGEMENT FOR EXTERNAL USERS 1/11 Sürüm Numarası Değişiklik Tarihi Değişikliği Yapan Erman Ulusoy Açıklama İlk Sürüm IDENTITY MANAGEMENT FOR EXTERNAL USERS You can connect EXTERNAL Identity Management System (IDM) with https://selfservice.tai.com.tr/

Detaylı

Android Studio Dersleri

Android Studio Dersleri Android Studio Dersleri Ümit KÖSE Umiitkose.com Herkese Merhaba, Ben Ümit Köse. Fırat Ünversitesi Bilgisayar Mühendisliği 4. Sınıf öğrencisiyim. 2 sene boyunca bloğumda yer verdiğim android derslerini

Detaylı

Activity Context.startActivity Activity, AndroidManifest

Activity Context.startActivity Activity, AndroidManifest Activity sınıfı tarafından oluşturulan nesneler uygulama içinde kullanılan ekranları temsil ederler. Kullanıcı yeni bir ekrana geçtiğinde Context.startActivity metoduyla bu ekran başlatılır. Eğer yeni

Detaylı

RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan. Inet-TR 12 9 Kasım 2012

RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan. Inet-TR 12 9 Kasım 2012 RoboGuice ve Android Annotations ile Verimli Android Uygulama Geliştirme Emrah Ayanoğlu, Onur Özcan, Alperen Eraslan Inet-TR 12 9 Kasım 2012 İÇERİK 1 STM A.Ş. Savunma Teknolojileri Mühendislik ve Ticaret

Detaylı

Androıd ile Arduıno. Nazir Doğan

Androıd ile Arduıno. Nazir Doğan Androıd ile Arduıno Nazir Doğan İçindekiler Bölüm 1: Başlarken 1 ADK Nedir? 2 Donanım Geliştirme Kartları 4 Google ADK 2011 4 Arduino ADK 6 Google ADK 2012 6 Arduino DUE 7 IOIO 8 Desteklenen Android Cihazlar

Detaylı

1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? İÇİNDEKİLER V İÇİNDEKİLER 1 GİRİŞ 1 Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız? 4 Kaynak Kodu 4 2 MERHABA DÜNYA 7 Android Nedir?

Detaylı

Android Cep Telefonu Programlama

Android Cep Telefonu Programlama Number: (5-2015) SCIENCE AND TECHNOLOGY INFORMATION SHARING Article Web Page: www.ibrahimcayiroglu.com Android Cep Telefonu Programlama (Android Mobile Phone Programming) Kaan KARAPINAR *, İbrahim ÇAYIROĞLU

Detaylı

Muhar a r r e r m e T a T ç J PT Gel e e l c e e c k e o k nli l n i e And n r d oi o d i Nedi d r

Muhar a r r e r m e T a T ç J PT Gel e e l c e e c k e o k nli l n i e And n r d oi o d i Nedi d r Muharrem Taç JDPT Gelecekonline Android Nedir 1 Android Nedir? Google ın 5 Kasım 2007 de 34 şirket ile birlik olarak çalışmalarına başladığı mobil işletim sistemi projesidir. Şu an 65 şirket bu birliktedir.

Detaylı

EĞİTİM KURUMLARINDA SINIF İÇİ YOKLAMA, SINAV GİBİ UYGULAMALARIN TABLET BİLGİSAYAR KULLANARAK HIZLI VE VERİMLİ HALE GETİRİLMESİ

EĞİTİM KURUMLARINDA SINIF İÇİ YOKLAMA, SINAV GİBİ UYGULAMALARIN TABLET BİLGİSAYAR KULLANARAK HIZLI VE VERİMLİ HALE GETİRİLMESİ ÖZEL EGE LİSESİ EĞİTİM KURUMLARINDA SINIF İÇİ YOKLAMA, SINAV GİBİ UYGULAMALARIN TABLET BİLGİSAYAR KULLANARAK HIZLI VE VERİMLİ HALE GETİRİLMESİ HAZIRLAYAN ÖĞRENCİ: Şemsettin Oğuz Yüksek DANIŞMAN ÖĞRETMEN:

Detaylı

NOT: VERİTABANINDAKİ TABLOLARI OLUŞTURMAYI DA UNUTMAYACAĞIZ.

NOT: VERİTABANINDAKİ TABLOLARI OLUŞTURMAYI DA UNUTMAYACAĞIZ. 20 Ocak 2012 / Cuma Yeni uygulama Yönetim adlı bir klasör oluşturacağız. Yönetim klasörü içerisine bir masterpage oluşturacağız. (tabloyla) Örneğin; Ana Sayfa Albüm ekle Fotoğraf ekle Content Place Holder(Değişecek

Detaylı

Android Nedir? Google'ın Android Inc şirketini alışı

Android Nedir? Google'ın Android Inc şirketini alışı Android Nedir? Android, Google, Open Handset Alliance ve özgür yazılım topluluğu tarafından geliştirilen, Linux tabanlı, mobil cihaz ve cep telefonları için geliştirilmekte olan, açık kaynak kodlu bir

Detaylı

Layout. (Düzen,Plan,Yerleşim)

Layout. (Düzen,Plan,Yerleşim) Layout (Düzen,Plan,Yerleşim) Layout LinearLayout TableLayout GridLayout RelativeLayout http://developer.android.com/guide/topics/ui/declaring-layout.html, 9 Mart 2015 Layout Telefon/Tablet Ekranındaki

Detaylı

Burak Kıymaz 13.10.2015 JAVA FX

Burak Kıymaz 13.10.2015 JAVA FX JavaFx neden çıktı? JAVA FX Eskiden desktop için swing kullanılırdı fakat pek iyi değildi. Javafx bu konuda css kullanmaya da izin verdiği için daha iyi bulundu. xml veriyi biçimlendirmek için kullanılan

Detaylı

CUSTOMSLİDİNG KULLANIMI

CUSTOMSLİDİNG KULLANIMI e CUSTOMSLİDİNG KULLANIMI 1112503078 İbrahim Can DUYGULU YBS 3-B Customsliding menü nedir? Tanımını yapmadan önce bu yapının özelliklerine bir bakalım. Bu özellikler; istediğimiz menülere anında erişebilme

Detaylı

ANDROID ORTAMINDA KENT REHBERİ GELİŞTİRİLMESİ: SİVAS İLİ ÖRNEĞİ

ANDROID ORTAMINDA KENT REHBERİ GELİŞTİRİLMESİ: SİVAS İLİ ÖRNEĞİ TMMOB Harita ve Kadastro Mühendisleri Odası, 16. Türkiye Harita Bilimsel ve Teknik Kurultayı, 3-6 Mayıs 2017, Ankara. ANDROID ORTAMINDA KENT REHBERİ GELİŞTİRİLMESİ: SİVAS İLİ ÖRNEĞİ Tamer TAŞKIN 1, Anıl

Detaylı

2.Eclipse açıldıktan sonra Workspace alanı seçilmesi gerekir. Workspace alanı projelerinizin fiziksel olarak bulunduğu kısımdır.

2.Eclipse açıldıktan sonra Workspace alanı seçilmesi gerekir. Workspace alanı projelerinizin fiziksel olarak bulunduğu kısımdır. 1.Eclipse http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/s R2/eclipse-jee-juno-SR2-win32.zip&mirror_id=1163 linkinden indiriyoruz. 2.Eclipse açıldıktan sonra

Detaylı

The RestructuredText Book Documentation

The RestructuredText Book Documentation The RestructuredText Book Documentation Sürüm 1.0 Daniel Greenfeld, Eric Holscher Nis 05, 2017 Contents 1 Başlarken 2 1.1 Kurulum....................................... 2 2 Apollo 3 2.1 Kurulum.......................................

Detaylı

Android Database SQLLite

Android Database SQLLite Android Database SQLLite Android Mimarisi Android İşletim sistemi, adres defteri, telefon arama, notification, 2D/3D grafik, Database, security/encryption, camera, ses, input/output, web.. gibi kütüphaneler

Detaylı

TÜM ÖĞRENCİ DEĞİŞİM PROGRAMLARI (ERASMUS-MEVLANA-FARABİ) BAŞVURU AŞAMALARI AYNI SÜRECİ TAKİP ETMEKTEDİR.

TÜM ÖĞRENCİ DEĞİŞİM PROGRAMLARI (ERASMUS-MEVLANA-FARABİ) BAŞVURU AŞAMALARI AYNI SÜRECİ TAKİP ETMEKTEDİR. TÜM ÖĞRENCİ DEĞİŞİM PROGRAMLARI (ERASMUS-MEVLANA-FARABİ) BAŞVURU AŞAMALARI AYNI SÜRECİ TAKİP ETMEKTEDİR. ELİNİZDEKİ KLAVUZDA ÖRNEK OLARAK ERASMUS+ BAŞVURU SÜRECİ BELİRTİLMİŞTİR. ALL STUDENT WHO WILL APPLY

Detaylı

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü:

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü: Bölüm 24 Java Ağ Uygulamaları 24.1 Java Appletleri Applet, Web tarayıcısında çalışan bir Java programıdır. Bir applet, Java uygulaması için tamamen fonskiyonel olabilir çünkü bütün Java API ye sahiptir.

Detaylı

Teknoloji Servisleri; (Technology Services)

Teknoloji Servisleri; (Technology Services) Antalya International University Teknoloji Servisleri; (Technology Services) Microsoft Ofis Yazılımları (Microsoft Office Software), How to Update Office 365 User Details How to forward email in Office

Detaylı

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI)

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI) MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI) Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web

Detaylı

ZTM112 BİLGİSAYAR DESTETEKLİ ÇİZİM TEKNİĞİ

ZTM112 BİLGİSAYAR DESTETEKLİ ÇİZİM TEKNİĞİ ZTM112 BİLGİSAYAR DESTETEKLİ ÇİZİM TEKNİĞİ Yrd.Doç.Dr.Caner KOÇ Ankara Üniversitesi Ziraat Fakültesi Tarım Makinaları ve Teknolojileri Mühendisliği Bölümü ckoc@ankara.edu.tr Teknik çizim nedir? Bir çizim

Detaylı

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular Önsöz Giriş İçindekiler V VII IX 1.1. Algoritma 1.1.1. Algoritma Nasıl Hazırlanır? 1.1.2. Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular 2.1. Programın Akış Yönü 19 2.2. Başlama

Detaylı

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/ Ana Main Kodları /*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/ package javaapplication1; public class JavaApplication1 public static void

Detaylı

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals The European Union s Making the Labour Market more Inclusive III programme For North Cyprus Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals Module

Detaylı

ERASMUS+ ÖĞRENCİ DEĞİŞİM PROGRAMI BAŞVURU SİSTEMİ KULLANIM KILAVUZU USERS GUIDE FOR THE ERASMUS+ STUDENT EXCHANGE PROGRAM APPLICATION SYSTEM

ERASMUS+ ÖĞRENCİ DEĞİŞİM PROGRAMI BAŞVURU SİSTEMİ KULLANIM KILAVUZU USERS GUIDE FOR THE ERASMUS+ STUDENT EXCHANGE PROGRAM APPLICATION SYSTEM ERASMUS+ ÖĞRENCİ DEĞİŞİM PROGRAMI BAŞVURU SİSTEMİ KULLANIM KILAVUZU USERS GUIDE FOR THE ERASMUS+ STUDENT EXCHANGE PROGRAM APPLICATION SYSTEM GİRİŞ YAPABİLMENİZ İÇİN ÜYE OLMALISINIZ! / YOU HAVE TO FIRST

Detaylı

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals The European Union s Making the Labour Market more Inclusive III programme For North Cyprus Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals Module

Detaylı

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI BİLEŞENLERİ 1 GİRİŞ (1/4) Uygulamalar cihazda meydana gelen bazı olaylardan (internet bağlantısı ile ilgili olaylar, güç bağlantısı ile

Detaylı

e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.

e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection  LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0. e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection www.etarti.com LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.0 1 LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.0 2 Contents

Detaylı

T.C. KOCAELİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

T.C. KOCAELİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ T.C. KOCAELİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRONİK VE HABERLEŞME MÜHENDİSLİĞİ Mikroişlemci Uygulamaları Ders Projesi Beaglebone Black ile Android ve NFC Üzerinden Kapı Kontrolü Gökhan TARIM 100208090

Detaylı

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi KULLANICI ARAYÜZ. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi KULLANICI ARAYÜZ. BLM401 Dr.Refik SAMET BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi KULLANICI ARAYÜZ BİLEŞENLERİ 1 GİRİŞ (1/6) Arayüz bileşenleri kullanıcı ile uygulama arasındaki etkileşimleri gerçekleştirmektedir. Arayüz bileşenleri

Detaylı

Cybersoft Bilişim Teknolojileri Sunucu Tarafı Programlaması Kursu Final soruları. Tarih: 27 Kasım 2010 Saat: 13:30 Süre: 3 saat

Cybersoft Bilişim Teknolojileri Sunucu Tarafı Programlaması Kursu Final soruları. Tarih: 27 Kasım 2010 Saat: 13:30 Süre: 3 saat Cybersoft Bilişim Teknolojileri Sunucu Tarafı Programlaması Kursu Final soruları. Tarih: 27 Kasım 2010 Saat: 13:30 Süre: 3 saat 1. Kısım Çoktan Seçmeli (48 puan) 1) Aşağıdaki JAVA kod parçası çalıştırıldığında

Detaylı

ECLIPSE PROGRAMININ ÇALIŞTIRILMASI

ECLIPSE PROGRAMININ ÇALIŞTIRILMASI ECLIPSE PROGRAMININ ÇALIŞTIRILMASI 1 Eclipse programının çalışır hale getirilebilmesi için JDK nın kurulumunun tamamlanmış olması gerekmektedir. Eclipse programı dosyasını indiremediyseniz dersin internet

Detaylı

BAŞVURU ŞİFRE EDİNME EKRANI/APPLICATION PASSWORD ACQUISITION SCREEN

BAŞVURU ŞİFRE EDİNME EKRANI/APPLICATION PASSWORD ACQUISITION SCREEN BAŞVURU ŞİFRE EDİNME EKRANI/APPLICATION PASSWORD ACQUISITION SCREEN 1) http://obs.karatay.edu.tr/oibs/ogrsis/basvuru_yabanci_login.aspx Linkinden E-Mail adresini kullanarak şifrenizi oluşturunuz. Create

Detaylı

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals The European Union s Making the Labour Market more Inclusive III programme For North Cyprus Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals Module

Detaylı

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) BBS-515 Nesneye Yönelik Programlama Ders #9 (16 Aralık 2009) Geçen ders: Java Applet lerde bileşen yerleştirme türleri ( applet layouts

Detaylı

IMDS KURULUM KILAVUZU (AIOS TEDARİKÇİLERİ İÇİN HAZIRLANMIŞTIR)

IMDS KURULUM KILAVUZU (AIOS TEDARİKÇİLERİ İÇİN HAZIRLANMIŞTIR) IMDS KURULUM KILAVUZU (AIOS TEDARİKÇİLERİ İÇİN HAZIRLANMIŞTIR) Internet tarayıcınızın adres kutucuğuna; http://www.mdsystem.com/ yazdıktan sonra, klavyenizden «ENTER» düğmesine basınız. Yukarıdaki, kırmızı

Detaylı

Mobil Uygulama Ders Notları v0.6

Mobil Uygulama Ders Notları v0.6 İçindekiler Mobil Uygulama Ders Notları v0.6 Not: Belgedeki örnekler Android 2.2, Java jdk1.8.0_102 sürümüyle hazırlanmıştır. 1-Android mobil uygulama geliştirme ortamı kurulumu 1.1-Java - http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Detaylı

Java ile Androıd. Programlama. Çağlar Artar

Java ile Androıd. Programlama. Çağlar Artar Java ile Androıd Programlama Çağlar Artar İçindekiler Bölüm 1: Androıd İşletim Sistemi 1 Android Nedir? 2 Neden Android? 3 Android in Gelişim Süreci 4 Android in Kullanım Alanları 5 Android in Geleceği?

Detaylı

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1 Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit

Detaylı

Her Yönüyle SQL Enjeksiyonu. OWASP-Türkiye Bünyamin Demir

Her Yönüyle SQL Enjeksiyonu. OWASP-Türkiye Bünyamin Demir Her Yönüyle SQL Enjeksiyonu OWASP-Türkiye Bünyamin Demir Bünyamin Demir ( @bunyamindemir ) OWASP Türkiye Bölüm Lideri Founder & CTO @ Enforsec Ltd. Sızma Testleri Uzmanı Web, Mobil, Network, SCADA, Wireless,

Detaylı

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi Nedir? olmadan Login.aspx Bilgilerinizi giriniz Durum Yönetimi İle Login.aspx Bilgilerinizi giriniz Adınız Adınız Pınar Pınar Soyadınız Soyadınız Onay Durdu Onay Durdu Gönder Gönder ASP.NET - 1 sayfa.aspx

Detaylı

Bİ L 131 Hafta 2. 1) Bilgisayara Java SE Development Kit 7 kurulması

Bİ L 131 Hafta 2. 1) Bilgisayara Java SE Development Kit 7 kurulması Bİ L 131 Hafta 2 1) Bilgisayara Java SE Development Kit 7 kurulması Bunun için internet tarayıcınızı (örneğin Mozilla Firefox, Google Chrome veya Internet Explorer) açınız ve http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

Detaylı

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. 1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. [10 puan] int param = 30; int result = 300; if (param > 45) result

Detaylı

isbank.com.tr İşCep İşWap İşPad 0850 724 0 724 Türkiye ş Bankas A.Ş.

isbank.com.tr İşCep İşWap İşPad 0850 724 0 724 Türkiye ş Bankas A.Ş. isbank.com.tr İşCep İşWap İşPad 0850 724 0 724 Türkiye ş Bankas A.Ş. Say n Müşterimiz, i-anahtar ınızı kullanıma açmak için: 1. İnternet Şubemizde Güvenlik / i-anahtar / İlk Kullanıma Açma menüsünü kullanınız.

Detaylı

MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme

MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme MVP, Observer ve Mediator Örüntüleri ile Yeniden Kullanılabilir Uygulama Bileşenleri Geliştirme Kenan Sevindik Kimdir? 1999 ODTÜ Bilgisayar Müh. mezunu 15 yılın üzerinde kurumsal uygulama geliştirme deneyimi

Detaylı

Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü. BM Yazılım - Staj Raporu

Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü. BM Yazılım - Staj Raporu Trakya Üniversitesi Mühendislik-Mimarlık Fakültesi Bilgisayar Mühendisliği Bölümü BM Yazılım - Staj Raporu Teslim Eden : İsim-Soyisim : Muhammet Umut AKSOY Numara : 1090203045 Kuruluşun İsmi ve Yeri :

Detaylı

Paket Erişimleri. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1

Paket Erişimleri. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1 Paket Erişimleri Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1 Erişim Erişim konusunda iki taraf vardır: Kütüphaneyi kullanan kişiler (client) Kütüphaneyi yazan kişiler Altuğ B. Altıntaş

Detaylı

HTML 4. Bölüm. Doç. Dr. İsmail Rakıp Karaş Dersin Course Page:

HTML 4. Bölüm. Doç. Dr. İsmail Rakıp Karaş  Dersin Course Page: HTML 4. Bölüm Doç. Dr. İsmail Rakıp Karaş www.ismailkaras.com irkaras@gmail.com (Son Güncelleme: 18.02.2015) Dersin Course Page: www.ismailkaras.com/228 Çerçeveler (Frames) Çerçeve kullanımı her ne kadar

Detaylı

INTRODUCTION TO JAVASCRIPT JAVASCRIPT JavaScript is used in millions of Web pages to improve the design, validate forms, detect browsers, create cookies, and much more. JavaScript is the most popular scripting

Detaylı

K12NET ÖĞRENCİ-VELİ PORTALI KULLANIMI USE OF K12NET STUDENT-PARENT PORTAL

K12NET ÖĞRENCİ-VELİ PORTALI KULLANIMI USE OF K12NET STUDENT-PARENT PORTAL K12NET ÖĞRENCİ-VELİ PORTALI KULLANIMI USE OF K12NET STUDENT-PARENT PORTAL 1. K12NET i İnternet Explorer 7, 8 ya da 9 sürümlerinde kullanınız. Firefox, Google Chrome vb. tarayıcılarda açmayınız. Use K12NET

Detaylı

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. ASP.NET DERS 1 Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. Gelen ekranda Visual C# seçildikten

Detaylı

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Yazılım Kodlama ve İ simlendirme Standartları v1.0 Yazılım Kodlama ve İ simlendirme Standartları v1.0 İçerik Yazılım Kodlama ve İsimlendirme Standartları... 2 1. Amaç... Hata! Yer işareti tanımlanmamış. 2. Kapsam... Hata! Yer işareti tanımlanmamış. 3.

Detaylı

Mobil Uygulama Ders Notları v0.5

Mobil Uygulama Ders Notları v0.5 İçindekiler Mobil Uygulama Ders Notları v0.5 Not: Belgedeki örnekler Android 2.2, Java jdk1.8.0_102 sürümüyle hazırlanmıştır. 1-Android mobil uygulama geliştirme ortamı kurulumu 1.1-Java - http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Detaylı

Bildiri Gönderimi için Önemli Tarihler

Bildiri Gönderimi için Önemli Tarihler 18. IFOAM Dünya Organik Kongresi Ana Bölüm, Uygulayıcı Bölümü, Atölye Çalışmaları ve Bilimsel Bölüm / 4. ISOFAR Bilimsel Konferansı 2014 için Organic eprints e bildiri gönderimi talimatları Organic eprints

Detaylı

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 9 Şubat 2012 / Perşembe Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 1) emlakkategorisi adlı tabloyu oluşturuyoruz 1 2) ilanlar adlı tabloyu

Detaylı

"Şirket" Sunucusu ve Başarı Mobile Arasındaki HTTP Veri Aktarımı için Etkileşim Teknik Protokolü

Şirket Sunucusu ve Başarı Mobile Arasındaki HTTP Veri Aktarımı için Etkileşim Teknik Protokolü "Şirket" Sunucusu ve Başarı Mobile Arasındaki HTTP Veri Aktarımı için Etkileşim Teknik Protokolü BAŞARI Mobile tarafından desteklenmektedir. 1. Genel Bakış Bu döküman ile Şirket Adı nın ve Basari Mobile

Detaylı

Ardunio ve Bluetooth ile RC araba kontrolü

Ardunio ve Bluetooth ile RC araba kontrolü Ardunio ve Bluetooth ile RC araba kontrolü Gerekli Malzemeler: 1) Arduino (herhangi bir model); bizim kullandığımız : Arduino/Geniuno uno 2) Bluetooth modül (herhangi biri); bizim kullandığımız: Hc-05

Detaylı

Erişim konusunda iki taraf vardır:

Erişim konusunda iki taraf vardır: Erişim Erişim konusunda iki taraf vardır: Kütüphaneyi kullanan kişiler (client) Kütüphaneyi yazan kişiler Paket (package) Paketler kütüphaneyi oluşturan elemanlardır. PaketKullanim.java Varsayılan Paket

Detaylı

Çalışma gelirinizi beyan etmeyi kolaylaştırıyoruz

Çalışma gelirinizi beyan etmeyi kolaylaştırıyoruz TURKISH Çalışma gelirinizi beyan etmeyi kolaylaştırıyoruz Çalışma gelirinizi beyan etmenizi ve durumunuzdaki değişiklikleri bildirmenizi kolaylaştıracak iyileştirmeler yapıyoruz. Kendi kendine beyan yöntemi

Detaylı

// hataları işaret eden referans

// hataları işaret eden referans System sınıfı java.lang.object java.lang.system public final class System extends Object System sınıfı, java.lang paketi içindedir. Platformdan bağımsız olarak sistem düzeyindeki eylemleri belirleyen dingin

Detaylı

Veri Yapıları ve Algoritmalar 2006-2007 2.dönem

Veri Yapıları ve Algoritmalar 2006-2007 2.dönem Veri Yapıları ve Algoritmalar 2006-2007 2.dönem Öğretim Elemanları: Dr. A. Şima Etaner-Uyar Dr. Gülşen Cebiroğlu-Eryiğit Dersle ilgili bilgiler Ders Kitabı Data Structures and Algorithms in Java, 4th Ed.,

Detaylı

12 Ocak 2012 / Perşembe

12 Ocak 2012 / Perşembe 12 Ocak 2012 / Perşembe Masa üstünde webvt adlı klasör var. Bu klasör üzerinde çalışacağımız için bunu web sitemiz olarak açacağız. Visio Studio programını açıp File Open Web Site açılan pencerede Masa

Detaylı

Model-Tabanlı ve Rastgele Karma Yöntem

Model-Tabanlı ve Rastgele Karma Yöntem Android de Çökme Tespitini İyileştirme Amaçlı Model-Tabanlı ve Rastgele Karma Yöntem Yavuz Köroğlu Mustafa Efendioğlu Alper Şen Bilgisayar Mühendisliği Bölümü Boğaziçi Üniversitesi, İstanbul/Türkiye yavuz.koroglu@boun.edu.tr

Detaylı

BMH-303 Nesneye Yönelik Programlama

BMH-303 Nesneye Yönelik Programlama BMH-303 Nesneye Yönelik Programlama Kurucu metotlar (constructors) ve statik deyimi Dr. Musa ATAŞ Siirt Üniversitesi Bilgisayar Mühendisliği Kurucu Metotlar (Constructors) Kurucu metot çeşitleri Varsayılan

Detaylı

1) Visual Studio da WebSiteemlakci adında yeni bir site oluşturuyoruz.

1) Visual Studio da WebSiteemlakci adında yeni bir site oluşturuyoruz. Ödev: Daha önce veritabanını oluşturduğumuz uygulamanın sitesini yapmak. Emlakçı sitesi. Kategoriler olacak. kategorilere satılık arsa, satılık konut, kiralık ev gibi bilgiler eklenecek. ve bu kategorilerin

Detaylı

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals The European Union s Making the Labour Market more Inclusive III programme For North Cyprus Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals Module

Detaylı

GridView ve DetailsView kullanarak kayıt düzenlemek

GridView ve DetailsView kullanarak kayıt düzenlemek GridView ve DetailsView kullanarak kayıt düzenlemek Bir önceki yazımda teorik olarak bu iki kontrole ait eventlerden söz etmiştim. Şimdi uygulama yapma zamanı. Bunun için daha önceki yazılarımıza devam

Detaylı

Nesneye yönelik: Javada herşey bir nesnedir. Java nesne yönelimli olduğu için kolayca geliştirilebilir.

Nesneye yönelik: Javada herşey bir nesnedir. Java nesne yönelimli olduğu için kolayca geliştirilebilir. BÖLÜM 1 Java Programlamaya Giriş Java programlama dili ilk olarak başında James Gosling`n bulundugu Sun Microsystems tarafından 1995 yılında, Sun Java Platformunun ana unsuru olarak geliştirilmeye başlandı.

Detaylı

ByteArrayOutputStream

ByteArrayOutputStream ByteArrayOutputStream java.io java.lang.object java.io.outputstream java.io.bytearrayoutputstream Kılgıladığı Arayüzler: Closeable, Flushable, AutoCloseable public class ByteArrayOutputStream extends OutputStream

Detaylı

ARCHICAD in EĞİTİM SÜRÜMÜ İÇİN BAŞVURU YAPILMASI

ARCHICAD in EĞİTİM SÜRÜMÜ İÇİN BAŞVURU YAPILMASI ARCHICAD in EĞİTİM SÜRÜMÜ İÇİN BAŞVURU YAPILMASI Graphisoft ArchiCAD yazılımı ticari sürümü dışında aynı zamanda öğrenciler, öğretmenler ve üniversiteler* için ücretsiz bir sürüm içermektedir. Yazılımın

Detaylı

Android Studio TextView ve EditText Öğr.Gör. Utku SOBUTAY

Android Studio TextView ve EditText Öğr.Gör. Utku SOBUTAY Android Studio TextView ve EditText Öğr.Gör. Utku SOBUTAY TextView 2 TextView, yazıları, sonuçları kullanıcıya göstermek için kullanılır. TextView sadece yazıları gösterir, yazılarda herhangi bir değişiklik

Detaylı

Chain of Responsibility Tasarım Şablonu KurumsalJava.com

Chain of Responsibility Tasarım Şablonu KurumsalJava.com Chain of Responsibility Tasarım Şablonu KurumsalJava.com Özcan Acar Bilgisayar Mühendisi http://www.ozcanacar.com Chain of responsibility sorumluluk zinciri anlamına gelmektedir. Sisteme gönderilen bir

Detaylı

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi GÜVENLİK VE İZİNLER. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi GÜVENLİK VE İZİNLER. BLM401 Dr.Refik SAMET BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi GÜVENLİK VE İZİNLER BLM401 Dr.Refik SAMET 1 GİRİŞ (1/3) Güvenlik, verilerin veya bilgilerin saklanması, kullanılması ve taşınması esnasında bilgilerin

Detaylı

Android Eğitim Programı Eğitimin Hedefi

Android Eğitim Programı Eğitimin Hedefi Android Eğitim Programı Eğitimin Hedefi Tüm katılımcıların Android hakkındaki temel kavramlara hakim olması ve eğitim sonunda geliştirilecek uygulama benzerinde uygulamaları yazabilecek kabiliyete ulaşması,

Detaylı

SPSS (Statistical Package for Social Sciences)

SPSS (Statistical Package for Social Sciences) SPSS (Statistical Package for Social Sciences) SPSS Data Editor: Microsoft Excel formatına benzer satır ve sütunlardan oluşan çalışma sayfası (*sav) Data Editör iki arayüzden oluşur. 1. Data View 2. Variable

Detaylı

Intercepting Filter Tasarım Şablonu KurumsalJava.com

Intercepting Filter Tasarım Şablonu KurumsalJava.com Intercepting Filter Tasarım Şablonu KurumsalJava.com Özcan Acar Bilgisayar Mühendisi http://www.ozcanacar.com Front Controller 1 tasarım şablonunda, kullanıcıdan gelen isteklerin (request) merkezi bir

Detaylı

MySqlConnection connection; MySqlCommand command; MySqlDataReader reader; MySqlDataAdapter adapter; DataTable table;

MySqlConnection connection; MySqlCommand command; MySqlDataReader reader; MySqlDataAdapter adapter; DataTable table; using System; using System.Data; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using MySql.Data; using MySql.Data.MySqlClient; namespace arac_servisi

Detaylı

Problem X. Kafes Kirişli Köprü. Çelik. E = 29000 ksi Poisson oranı = 0.3 Tüm elemanlar W6X12 Fy = 36 ksi. Betonarme Köprü Tabliyesi

Problem X. Kafes Kirişli Köprü. Çelik. E = 29000 ksi Poisson oranı = 0.3 Tüm elemanlar W6X12 Fy = 36 ksi. Betonarme Köprü Tabliyesi Problem X Kafes Kirişli Köprü Çelik E = 29000 ksi Poisson oranı = 0.3 Tüm elemanlar W6X12 Fy = 36 ksi Betonarme Köprü Tabliyesi E = 3600 ksi Poisson oranı = 0.2 Kalınlığı 12 inch Hareketli Yük = 250 pcf

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME PELİN YILDIRIM FATMA BOZYİĞİT YZM 3214 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Bu Derste Andoid App Dizayn Prensipleri Ekranlarda kullanabileceğimiz

Detaylı

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011 Adım Adım SPSS 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü Y. Doç. Dr. İbrahim Turan Nisan 2011 File (Dosya) Menüsü Excel dosyalarını SPSS e aktarma Variable View (Değişken Görünümü 1- Name (İsim - Kod)

Detaylı

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü BM-209 Nesne Yönelimli Programlama Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü Java Programlama Dili Java bayt kodları Java Sanal Makineleri üzerinde

Detaylı

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş Kurulum için ilk önce Sun Microsystems in sitesinden uygun J2SE sürümünü indirin. Ben J2SE v1. 4. 2_16 Windows Installer paketini kullandım J2SE SDK Kurulumu aşağıdaki gibi başlayacaktır. 1 Kurulum tamamlandıktan

Detaylı

Learn how to get started with Dropbox: Take your stuff anywhere. Send large files. Keep your files safe. Work on files together. Welcome to Dropbox!

Learn how to get started with Dropbox: Take your stuff anywhere. Send large files. Keep your files safe. Work on files together. Welcome to Dropbox! Learn how to get started with Dropbox: 1 2 3 4 Keep your files safe Take your stuff anywhere Send large files Work on files together Welcome to Dropbox! 1 Keep your files safe Dropbox lets you save photos,

Detaylı