RSS
sobota, 31 marca 2012
Narzędzie do tworzenia gier na platformy iOS / Android - Unity 3.5

 

Pamiętaj! Jeśli skorzystałeś z oferty 'świątecznej' Unity Technologies i 'zakupiłeś' licencje na engine Unity3D musisz ją aktywować do 20 kwietnia 2012.

 

Jeśli myślisz o tworzeniu gier na platformy mobilne iOS (iPhone, iPod, iPad) / Android może to Cie zainteresuje?

 

Firma Unity Technologies oferuje bezpłatnie najnowszą wersję swojego narzędzia do tworzenia gier: Unity 3.5.

 

Oferta ważna jest do 8-go kwietnia.

  Unity 3.5

 

Kliknij tutaj aby 'zakupić' i pobrać engine.

środa, 28 marca 2012
Programowanie iPhone / iOS - iPhone/iPod/iPad - pierwszy program
W poprzednim poście opisałem jak zacząć tworzenie aplikacji na platformę iOS, co jest do tego potrzebne jaki sprzęt i programowanie. Dziś chciałem opisać krok po kroku tworzenie prostej aplikacji. Nie będzie to typowa aplikacja „Witaj świecie” z wyświetlanym jedynie statycznym tekstem. Nasz pierwszy program iOS nie będzie typową aplikacja Hello World wyświetlającą jedynie statyczny tekst, postaram się by był on nieco ciekawszy. Spróbujemy zbudować kalkulator napiwków. Zapraszam do lektury :)
wtorek, 20 marca 2012
Programowanie iPhone / iOS - iPhone/iPod/iPad - jak zacząć
5 marca 2012 roku Apple ogłosiło, iż z App Store pobrana została 25-cio bilionowa aplikacja. Obecnie App Store oferuje ok. 550’000 aplikacji dla 315 milionów użytkowników iPhonów, iPodów i iPadów w 123 krajach. Jeśli chcesz, aby jedną z tych aplikacji był program napisany przez Ciebie, ale nie jesteś pewien jak zacząć zapraszam do serii tutoriali o programowaniu iOS dla początkujących. W pierwszej części – „Jak zacząć” opiszę, co jest potrzebne do tworzenia aplikacji iOS, jaki sprzęt jest zalecany, jakie narzędzia, oprogramowania są do tego wykorzystywane. Krok po kroku pokażę, jak zarejestrować się w programie developerskim Apple oraz jak pobrać i zainstalować aplikację Xcode.
środa, 07 marca 2012
Oracle - IsNumber - sprawdzenie czy wartość jest liczbą

Baza danych Oracle nie posiada własnej funkcji isNumber sprawdzającej czy dana wartość jest wartością liczbową czy też nie. Gdy chcemy to sprawdzić możemy skorzystać z poniższego rozwiązania:

 

/*
   Funkcja zwraca 1 dla liczby i 0 w przeciwnym wypadku,
   jesli value = NULL funkcja zwraca NULL;
*/
CREATE OR REPLACE FUNCTION isNumber (value VARCHAR2)
   RETURN NUMBER
IS
   isNumber   NUMBER := 1; --liczba
BEGIN

   IF value is null then 
      isNumber := NULL;
   ELSE
      IF LENGTH (TRANSLATE (value, ' +-.0123456789', ' ')) > 0 THEN
         isNumber := 0; --nie liczba
      END IF;
   END IF;
   
   RETURN isNumber;
   
END isNumber;
/

 

Wyniki działania ilustruje poniższy przykład:

 

SELECT   isNumber (-10.6),
         isNumber (+8.86),
         isNumber ('1147784'),
         isNumber (' '),
         isNumber ('foo'),
         isNumber (NULL)
  FROM   DUAL;

 

Oracle - IsNumber - sprawdzenie czy wartosc jest liczba

 

Gdy nie możemy utworzyć/skorzystać z powyższej funkcji możemy wykorzystać zaprezentowane podejście w zwykłym zapytaniu. Poniższy przykład wyświetla wszystkie wiersze w tabeli TABLE_NAME, które nie zawierają wartości liczbowych w kolumnie COLUMN_NAME.

 

SELECT   *
  FROM   TABLE_NAME
 WHERE   LENGTH (TRANSLATE (COLUMN_NAME, ' +-.0123456789', ' ')) > 0;
13:30, m0rt1m3r
Link Komentarze (4) »
czwartek, 01 marca 2012
PowerBuilder - nazwa aplikacji i pliku exe

Zawsze myślałem, że nazwa obiektu aplikacji odpowiada nazwie pliku wykonywalnego (.exe) najprawdopodobniej dlatego, że w 99% procentach przypadków tak właśnie jest.



W jednym z projektów, nad którymi pracuję musieliśmy zmienić nazwę pliku .exe, dla wyjaśnienia dodam, że nazwę aplikacji wykorzystujemy do dynamicznego tworzenia nazwy pliku .ini. Po tej zmianie zauważyłem, że powyższe stwierdzenie nie jest prawdziwe :)



Faktyczna nazwę pliku wykonywalnego (exe) można odczytać następująco (troszkę musiałem poszperać w internecie):



1. najpierw deklarujemy funkcje zewnętrzną:


FUNCTION ulong GetModuleFileName (
   ulong hinstModule, 
   ref string lpszPath, 
   ulong cchPath ) LIBRARY "KERNEL32.DLL" ALIAS FOR "GetModuleFileNameA;ansi"

 

2. następnie (ja utworzyłem poniższą funkcję, ale kod może być również użyty in-line):

 

PowerBuilder - nazwa aplikacji i pliku exe

 

I pełny kod funkcji:

 

ClassDefinition  lcd

string ls_fullpath 
ulong lul_handle, lul_length = 512

IF handle(getapplication()) = 0 THEN
    //aplikacja uruchomiona z edytora
    lcd=getapplication().classdefinition
    ls_fullpath = lcd.libraryname
ELSE
    //uruchomiona wersja exe
    lul_handle = handle(getapplication())
    ls_fullpath=space(lul_length) 
    GetModuleFilename(lul_handle, ls_fullpath, lul_length)
END IF

RETURN ls_fullpath

 

Przetestować naszą funkcję możnemy w bardzo prosty sposób:

 

MessageBox("Dane aplikacji ", "Nazwa obiektu aplikacji: " + this.appname + &
								  "~n~rNazwa uruchomionego exe: " + this.uf_getexename())

 

Przed zmianą nazwy exe:

 

PowerBuilder - nazwa aplikacji i pliku exe

 

i po zmianie:

 

PowerBuilder - nazwa aplikacji i pliku exe

Tagi




PowerBuilder Tetris
D - Tetris



Programowanie iOS

C# ToolBox

SQL / TSQL / PLSQL ToolBox

Linux / Unix ToolBox





Zaprzyjaznione Strony

Sprite Bandits

Cake Time