🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.objects
8 messages
8 total messages Started by yapann Mon, 18 Sep 2006 19:45
taki problem z notacjami
#15521
Author: yapann
Date: Mon, 18 Sep 2006 19:45
24 lines
1647 bytes
zagadnienie jest nastepujące:

1: analityk robi model klas (analityczny)
2: projektant tworzy model klas projektowych,
majster bazodanowy popełnia model danych

problem:
programista chciałby mieć w modelu aplikacji (klas) notacje dla nazw klas i 
atrybutów stylem 'naJavę' - dla inżynierii 'do przodu', tymczasem 
bazodanowiec życzyłby sobie notacji_podkreslnikowej do mapowania 
obiektowo->relacyjnego (np. Rose Data Modeler))

Oczywiście najidealniej byłoby móc dokonywać synchronizacji tych trzech 
atrefaktów stale, w procesie iteracyjnym.




- jak najlepiej zrobić, by wilk był cały i owca syta, czyli inżynierii stało 
się zadość i nie ucierpiał żaden pracownik :p ?


-- 
  ya
Re: taki problem z notacjami
#15522
Author: A.L.
Date: Mon, 18 Sep 2006 19:56
25 lines
1561 bytes
On Mon, 18 Sep 2006 21:45:29 +0200, "yapann" <yapann@odwa.pe.el>
wrote:

>zagadnienie jest nastepujące:
>
>1: analityk robi model klas (analityczny)
>2: projektant tworzy model klas projektowych,
>majster bazodanowy popełnia model danych
>
>problem:
>programista chciałby mieć w modelu aplikacji (klas) notacje dla nazw klas i 
>atrybutów stylem 'naJavę' - dla inżynierii 'do przodu', tymczasem 
>bazodanowiec życzyłby sobie notacji_podkreslnikowej do mapowania 
>obiektowo->relacyjnego (np. Rose Data Modeler))
>
>Oczywiście najidealniej byłoby móc dokonywać synchronizacji tych trzech 

na przyklad tak:

@FieldName(ilosc_dni_w_roku)
	int _iloscDniWRoku;

tzreba tylko poglowkowac jak to zrobic

A.L.
Re: taki problem z notacjami
#15523
Author: yapann
Date: Mon, 18 Sep 2006 20:44
22 lines
1799 bytes
Użytkownik "A.L." <alewando@fala2005.com> napisał w wiadomości

> @FieldName(ilosc_dni_w_roku)
> int _iloscDniWRoku;
>
> tzreba tylko poglowkowac jak to zrobic

hm, a coś wiecej?

na wszelki wypadek, uściślę: chodzi o to, że kiedy w modelu klas 
analitycznych stosuje się notację naJavę (raczej stosowną dla modelowanioa 
obiektowego), to ddl'e bazodanowe otrzymane drogą tranformacji 
obiektowo->relacyjnej (z automatu) mają niebardzo bazodanową notację (tu 
akurat w użyciu Oracle, jeśli to coś wnosi)

w przeciwnym razie, tzn sotsując notację_podkreślnikową w analitycznym 
modelu aplikacji (klas), stosowanie forwarde'a daje pokrakę_obiektową 
(podkreślniki) w otrzymanym kodzie, która jest wykluczona


-- 
  ya
Re: taki problem z notacjami
#15524
Author: mgl
Date: Mon, 18 Sep 2006 20:56
20 lines
1877 bytes
yapann wrote:
> na wszelki wypadek, u¶ci¶lê: chodzi o to, ¿e kiedy w modelu klas 
> analitycznych stosuje siê notacjê naJavê (raczej stosown± dla modelowanioa 
> obiektowego), to ddl'e bazodanowe otrzymane drog± tranformacji 
> obiektowo->relacyjnej (z automatu) maj± niebardzo bazodanow± notacjê (tu 
> akurat w u¿yciu Oracle, je¶li to co¶ wnosi)

No to w takim razie to kwestia tego automatu odpowiedzialnego za 
transformację forward. Czego używasz? Może wystarczy zmienić mu szablony 
transformacji?

I czy ja wiem, czy brak podkreślników w nazwach tabel/kolumn jest dużą 
stratą, gdy system jest na tyle mały, że można się zdecydować na 
automatyczną transformację z modelu obiektowego do relacyjnego z myślą, 
że o relacyjnym z punktu widzenia programisty zapominamy, bo obsługą 
trwałości w RDBMS zajmie się mapper O/R?

-- 
pozdrawiam,
Michał
Re: taki problem z notacjami
#15526
Author: mgl
Date: Mon, 18 Sep 2006 20:58
11 lines
1169 bytes
yapann wrote:

> 2: projektant tworzy model klas projektowych,
> majster bazodanowy pope³nia model danych

To gdzie tu miejsce na automatyczną transformację forward, o której 
zdaje się piszesz, jeśli te dwa modele tworzone są oddzielnie? :)

-- 
pozdrawiam,
Michał
Re: taki problem z notacjami
#15528
Author: Piotr Dembiński
Date: Mon, 18 Sep 2006 21:35
31 lines
1558 bytes
"yapann" <yapann@odwa.pe.el> writes:

[...]

> programista chciałby mieć w modelu aplikacji (klas) notacje dla nazw
> klas i atrybutów stylem 'naJavę' - dla inżynierii 'do przodu',
> tymczasem bazodanowiec życzyłby sobie notacji_podkreslnikowej 
> do mapowania obiektowo->relacyjnego (np. Rose Data Modeler))

Tu masz procedurę:

def name_to_camelcase(name):
    l = name.split()
    s = l[0]
    for w in l[1:]:
        s = s + w.capitalize()
    return s

I dla nazw z podkreślnikami:

def name_to_pythonic(name):
    l = name.split()
    s = l[0]
    for w in l[1:]:
        s = s + '_' + w
    return s

Nie testowałem, ale powinno działać.

-- 
http://www.piotr.dembiński.prv.pl
Re: taki problem z notacjami
#15527
Author: yapann
Date: Tue, 19 Sep 2006 19:26
17 lines
1511 bytes
Użytkownik "mgl" <ask@for.email.com> napisał w wiadomości

> To gdzie tu miejsce na automatyczną transformację forward, o której zdaje 
> się piszesz, jeśli te dwa modele tworzone są oddzielnie? :)

chodzi o generowanie modelu danych z modelu aplikacji - przybliż, w czym 
tkwi nieścisłość?

ps:
niektórzy lubią tworzyć model aplikacji w oderwaniu od modelu danych - inni 
wolą utworzenie modelu danych i 'obudowanie' go aplikacją ..  - to tak z 
praktycznej obserwacji.



-- 
  ya
Re: taki problem z notacjami
#15525
Author: A.L.
Date: Tue, 19 Sep 2006 19:44
32 lines
2098 bytes
On Mon, 18 Sep 2006 22:44:27 +0200, "yapann" <yapann@odwa.pe.el>
wrote:

>Użytkownik "A.L." <alewando@fala2005.com> napisał w wiadomości
>
>> @FieldName(ilosc_dni_w_roku)
>> int _iloscDniWRoku;
>>
>> tzreba tylko poglowkowac jak to zrobic
>
>hm, a coś wiecej?
>
>na wszelki wypadek, uściślę: chodzi o to, że kiedy w modelu klas 
>analitycznych stosuje się notację naJavę (raczej stosowną dla modelowanioa 
>obiektowego), to ddl'e bazodanowe otrzymane drogą tranformacji 
>obiektowo->relacyjnej (z automatu) mają niebardzo bazodanową notację (tu 
>akurat w użyciu Oracle, jeśli to coś wnosi)
>
Mnie chodzilo o cos chyba takiego samego: ze w javei mam "javowe"
nzawy, a w bazie danych jakies bardzo dziwne i pokraczne jak to
sobei wymyslili chlopcy od baz danych. na dodatek, oni maja zwyczaj
czasem te nazwy zmieniac. Wiec chcialbym a) miec jedno miejsce gdzie
nazwa "jawowa" jest polaczona z naada databazowa", b) mechanizm
ktory by umozliwial odczytanie/zapisanei wartosci "javowej" z bazy
danych bez kombinowanai za kazdym razem jaki jest zwiazek meidzy
tymi nazwami.

To bylo w sytuacji gdy uzycie Hibernate bylo
niemozliwe/nieuzasadnione. Mechanizm annotacji w javie doskonale sie
do tego nadal.

A.L.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads