Monday, September 27, 2010

Object-oriented programming concepts and guidelines



Object-Oriented Programming (OPP) is a programming language model, it is organized around "objects", rather than around the "behavior"; around the data, rather than logic. In the past, a program seen as a logical process to receive input on the input value processing, and then produce an output value. How to write program logic be regarded as challenges, rather than how to define the data. Object-oriented programming with the view that we are really concerned about is to operate the object, not the object of logic operation. Include a range of objects, ranging from human (with name, address, description, etc.), down to the building and the floor (all the attributes to describe and manage the objects, or even your computer desktop widgets (such as buttons and scroll bars) .

OOP in the first step is to define the action you want all the objects and how to establish links between them, the most common application is data modeling. Once you define an object, you use an object class to summarize it (imagine Plato's "ideal state" concept, the chair on behalf of all the chairs, which means that each class of things has its common characteristics), define it contains data type and any logic to operate its program. The logic of each different procedure is considered a method. Real instance of a class is called (it was no surprise) an "object", or in some environments is called an "instance of the class." Object or class instance is what you want to run on your computer. It means providing computer instructions to provide the corresponding data object properties. You and the object communication - the object were to communicate with each other - with clearly defined interfaces called messages.

Object-oriented programming concepts and criteria used to bring the following important benefits:

The concept of data type definition of data objects makes it possible subclasses, which subclasses can share some or all of the parent class attributes. As inheritance, OOP, this feature increased the thoroughness of data analysis, reduce development time and improve coding accuracy.

As a class only defines the data it needs to involve, as an instance of the class (an object) at run time, the code will not accidentally access other program data. The data hiding features to enhance the system security and data to avoid unintentional contamination.

The definition of a class is not only the initial re-create its procedures, and by other process-oriented reuse (in view of this reason, the network distributed applications much easier)

The concept of data classes allows a programmer to create any of the language has not yet been detailed in the new data types. The first one object-oriented computer language called Smalltalk. C + + and Java is now the most popular object-oriented language. Java programming language to corporate network and the Internet specifically designed for distributed applications.







Recommended links:



Hopson Zhu Meng v. United States, according to the country involved?



Across threads in C # Winform control access



guangzhou 2010 asian games winning software



DVR-MS To MPEG



QuickTime to MPEG



MKV To Xbox 360



Find driving force BEHIND IPv6



Improvement of the current financial report



Articles about CATALOGING



Recommend Audio Players



Easy to use Mathematics Education



Epson ink cartridge patent new alternative to the situation of domestic supplies of unknown



Third Eye training



Top SHELL Tools



Zhou Chengyu Court hematemesis: die in the end to fight a lawsuit



Thunder has more than 100 million users targeting NASDAQ



Thursday, September 16, 2010

Gartner: Mac OS bad luck into the next start spyware threat


According to the "Computer World" reported Symantec warned that because OS X operating system will quickly become the target of hackers and viruses, causing uproar in the Mac world, after just over one week, Gartner reliant on the Mac to prevent "rampant spyware "enterprise
Issued a warning.

Garnter Dataquest vice president Martin Reynolds said recently that, despite the Mac user base is relatively small, but as long as there is a vulnerability exploit could cause trouble. Reynolds wrote in a research report: "Macintosh user group is relatively small, in the current system, only about 3% of the running Mac OS. Mac OS is a more difficult targets. However, if there is a weakness to be use can cause problems. "he added, not only for Mac worm that spreads very rapidly, but may also prepare a further attack not only attack Microsoft's Windows operating system, Mac mix of worms.

Reynolds said: "If an infected Macintosh attempts to spread a worm, 97% chance it encountered a resistance to worm propagation system. Both Mac OS and Microsoft Windows-oriented worms could be developed, but such an attack more difficult to organize. "

He was concerned with Mac OS as the target of spyware may record widely before its foothold.

Reynolds said: "Despite the Mac platform today, almost non-existent spyware, but spyware problems may occur. Spyware can hide deeper in the system, becoming both harder to detect and harder to remove. Do not assume that your Macintosh systems are immune viruses and other malicious code. "





Recommended links:



Jinshan Jinshan Nu Pi Typing Through Repeated Fake "Li Gui," Poisonous Pit Users



FIREWALL And Proxy Servers comments



Using a password reset disk recover lost XP passwords



Convert Mpg To Ipod



E-cology in the Pan Micro Series 27



"Jingdong model" kept short board



Recommend Source Editors



mkv



VC ENVIRONMENT created in the symbian build EXE project questions



Convert .flac to .mp3



GUIDE Cursors And Fonts



BI, in the M & A growth?



Quicktime mkv



Kabbah: Careful Tuxedo (Tux)!



Directory Dial Up And Connection Tools



Details determine success or failure: Lean Manufacturing (6)



Wednesday, August 4, 2010

FreeBSD Serial (44): X Free86 hardware requirements



When the FreeBSD system as a server when its work does not depend on any graphical interface, the interface can be done using only characters in almost all server-side tasks. However, greater flexibility in graphical interface, you can open multiple windows at the same time, the implementation of some characters can not complete the task of the interface (such as graphics), to make the system easier to use FreeBSD, etc., the processing power of a graphical interface is intended to FreeBSD system used as an essential capacity of personal workstation platform.

FreeBSD support through the X Window System graphical interface, X Window is a set of standards developed by the MIT graphical interface, its current version is X11R6.3. With MS Windows or Macintosh graphical interface different, X Window is a platform independent interface to the basic graphics function calls, it does not include specific hardware and specific display style, the X Window highly configurable, there are a variety display style. If the graphical interface into the display involving application management capabilities, graphical interface for graphics and display low-level hardware interface of three parts, then the X Window is a set of mid-tier and low-level graphics protocol.

But the MIT X Window release the source code does not include low-level code, that is, the specific display hardware on the system implementation, in order for X Window to the specific hardware in the computer up and running, also need to develop the appropriate driver. In addition to developing a variety of proprietary vendors to provide true hardware drivers available X Window System, another has a variety of hardware drivers and are free to use the X Window system for XFree86. It is a lot of volunteer organizations, the use of X Window display the source code for a variety of hardware development for the free use of the X server, makes the X Window system to the specific operating system in a real hardware running. FreeBSD and other free operating systems use some Xfree86 system as the graphics system.

Installation and setup X server

FreeBSD using XFree86 as a basic X Xindow system, but also a professional manufacturer for the production of X server FreeBSD system, such as Xi Graphics Inc., the company developed commercial X servers usually support more and newer display hardware, and can support all the new hardware kinds of features. As for the volunteers XFree86 development, hardware manufacturers can not be displayed technical support and technical information, so support for new hardware to be worse. In general, if not used too new display hardware, XFree86 graphics system that can meet the needs of the establishment. So here describes set up and use XFree86 systems.

X Free86 hardware requirements

Current latest version of XFree86 to XFree86 3.3.3, support for multiple types of graphics card. But the graphical interface than the text interface requires more system resources, especially memory. Usually running the FreeBSD X Window system, at least 8MB RAM and 8MB of swap space should be there to run other X applications. To achieve higher performance, however, should have better hardware conditions, such as with hardware acceleration of graphics card.

Display card: XFree86 support multiple graphics cards from ordinary VGA graphics card to a dedicated graphics card. Use of personal computers in general are a certain kind of VGA-compatible graphics card, which meet the minimum requirements for XFree86. However, if the XFree86 support for the specific type of graphics card, you can use 256 colors or higher true color, the greater the resolution of the display mode to run the X Window System, otherwise, they can use the standard 16-color VGA mode. And the use of hardware graphics accelerator card features will significantly improve the graphical interface of the display speed.

Monitor: As the Unix users and developers are used to professional workstations, so they designed the graphical interface is designed for the big screen. Use a small display X Window, find the button too often, the border is too rough, etc., so the monitor should be able to reach a resolution of 1024x768 or higher to play better under a variety of X Window interface style advantage.

Keyboard: frequently used Unix workstation keyboard with PC keyboard layout not the same, but the average user is more used to PC-style keyboard. XFree86 can remap the keyboard, default keyboard mapping for the PC-style keyboard, but more familiar with the workstation user can redefine the keyboard on the keyboard arrangement.

Mouse: MS Windows using a 2 button mouse, the X Window are more accustomed to using 3 button mouse, keyboard and mouse for only 2 target computer, XFree86 can provide a simulation of the third key operational functions. Do not use the same style, for example, the use of double points in the Windows95 "double click" to perform the procedure, the X, you can usually just a single point, since the use of X Window users are usually long-term use of computer experts who believe that double point of operation makes for tense state of an ongoing double-finger operation will cause damage.

Before installing XFree86, first of all need to know whether the computer's video card supported by XFree86, XFree86 supports a large number of common graphics hardware, but because X server driver not the hardware manufacturers to develop, then a hardware appears to be from XFree86 to support takes a time, many hardware manufacturers for the protection of commercial confidentiality considerations, there is no public details of their hardware, which on the development of drivers for their hardware provided additional obstacles. Installed XFree86, you can view the document directory README files (FreeBSD under the file path / usr/X11R6/lib/X11/doc/README), to view the Xfree86 support the type of video card chips.







Recommended links:



Anti-Virus Tools Catalogs



Must Have The Heart By The Five Interview



Why is throwing money at very odd tiger VC Zhou Hongyi good "Fudge"?



Stamp Effect In The Production Of Fireworks



Picked Games Kids



Blackberry Video Formats



Mp4 to wmv converter free



M4v File



Photoshop pumping effect of the new line of thinking



Video Converter



"Aion," the so-called dual-sword Star Alternative Analytical



First Financial Weekly: direct supply in the Shadow of Digital CHINA



The world to those who have ACCESS



Hot Graphic Viewers



"NBA2K10" Extraordinary feint ball the whole Raiders



Alipay's Disregard The Changing Circumstances



Fax Tools INTRODUCTION



Wednesday, July 21, 2010

C + + compiler on the template of separate answers to questions



First of all, C + + standard that a compilation unit [translation unit] is a. Cpp file and include it all. H files,. H file in the code will be extended to include it. Cpp file, and then compile the compiler. cpp file as a. obj file, which has a PE [Portable Executable, the windows executable file] file format, and contains in itself already is a binary code, but may not be able to perform, as and does not guarantee there will be one main function. When the compiler will be a project in all. Cpp files to compile separate ways after, then the connector (linker) to connect to a. Exe file.

For example:

//--------------- Test.h-------------------//

void f ();// here to declare a function f

//--------------- Test.cpp--------------//

# Include "test.h"

void f ()

(

... / / Do something

) / / Here to achieve the function f declared test.h

//--------------- Main.cpp--------------//

# Include "test.h"

int main ()

(

f (); / / call f, f is the external connection type

)
In this case, test. Cpp and main.cpp is compiled into various different. Obj file [name test.obj throw and main.obj], in the main.cpp, calling the f function, but when the compiler main.cpp time, just know that it is only main.cpp contained in the test.h file in the one on void f (); the statement, the compiler will be here, f as the external connection type, or that Its function is to achieve the code in another. obj file, in this case is test.obj, that is, main.obj actually not even a line on the f function of the binary code, and these codes are actually present in test.cpp compiled into the test.obj in. In main.obj call on f command will generate a line call, like this:

call f [C + + in the name of course, after mangling [deal] off]

At compile time, this call instruction is clearly wrong, because there is no line f main.obj the implementation code. Then how should we do? This is the task of the connector, connectors for the other. Obj in [this case test.obj] f the implementation code search to find the instruction after the call f replaced by a call to address the actual entry point address of the function f . Note that: the connector will actually work inside. Obj "connection" has become a. Exe file, and its most critical task is said above, look for an external connection symbol in the other. Obj in the address, then replace the original "false" address.

If this process is a more in-depth:

call f command line but it is not, it is actually the so-called stub, which is a jmp 0x23423 [This address may be arbitrary, but the key is that there is a line command to address a genuine call f action. That is, the. Obj file which calls all of the f, jmp to the same address, in which there really "call" f. This has the advantage that changes of address as long as the connector on the latter's call XXX address for changes on the line. But how to find the f connector is the actual address it [in this case, it is test.obj in].

Because. Obj to. Exe format is the same, in such a file into a symbol table and symbol export table [import table and export table] which will address all the symbols and their associates. This connector as long as the export table in test.obj find symbol symbol f [of course, C + + on f were mangling] address on the line, and then make some offset treatment [because it is two. Obj files into, of course, address will have a certain offset, the connector clear] write main.obj the symbols into the table f occupied by the last one.
This is about process. The key is:

Main.cpp compiled, the compiler does not know f the realization of it all when it comes to just give a call instruction, the connector should be directed to find f for its implementation body. This means that main.obj not on any line of binary code f.

Compile test.cpp, the compiler found a f implementation. Ever since the realization of f [binary code] in test.obj years.

Connection, the connector found in test.obj f the implementation code [binary] address [derived through symbol table]. Then the pending call XXX main.obj address into f the actual address.

Completed.

However, the template, you know, actually the code template function can not be directly compiled into binary code, which must be of a "modernization" process. For example:

//---------- Main.cpp------//

template

void f (T t)

()

int main ()

(

... / / Do something

f (10); / / call f decided to give the compiler where f is a body of concrete f

... / / Do other thing

)



[Next]



That is, if you had not called main.cpp file, f, f is also not specific to main.obj in f there is no arbitrary line on the binary code! ! If you call this:

f (10); / / f to come out with is of

f (10.0); / / f to come out with is of

This main.obj in and will have a f, f are two functions of the binary code. And so on.

But with the current requirements of the compiler know that the template definition, is not it?

See the following example: [to separate the template and its implementation]

//------------- Test.h----------------//

template

class A

(

public:

void f (); / / here is a statement

);

//--------------- Test.cpp-------------//

# Include "test.h"

template

void A:: f () / / template to achieve, but note: not with the current

(

... / / Do something

)

//--------------- Main.cpp---------------//

# Include "test.h"

int main ()

(

A a;

af (); / / Here the compiler does not know A:: f of the definition because it is not test.h inside

/ / So compiler can only hopes the connector so that it might in others. Obj to find something

/ / A:: f the implementation body, in this case is test.obj, however, the latter really have A:: f the

/ / Binary code? NO! ! ! Because C + + standard clearly that when a template is not used when

/ / Hou it should not be a stand out, test.cpp used in the A:: f it? No! ! So Real

/ / Test.cpp compiled on the occasion of the test.obj file on A:: f the line of binary code has not

/ / Then the connector was stoned, and had to give a connection error

/ / However, if you write a function in test.cpp, which calls A:: f, the compiler will it / / with stand out, because at this point [test.cpp in], the compiler know the template definition, they are able to / / enough with current technology, therefore, test.obj symbol export table will have a A:: f the address of this symbol, so the connector will be able to complete the task.

)

The key is: separate compilation environment, the compiler compile one. Cpp file does not know the other. Cpp file exists, it will not find [When faced with hopes it will open symbols connected device]. This model case in the absence of the template works well, but the encounter template was stoned, because the template only when needed will come with modernization, so when the compiler can only see the template declaration, it can not a modernization of the template, can only create a symbolic link with the external connector and look forward to be able to sign out the address resolution.

However, when the realization of the template. Cpp file does not use the template with the current body, the compiler is too lazy to go with, so the whole project. Obj can not find a line on the template with the current body of binary code, then connect devices are dumbfounded! (CSDN)









Recommended links:



Bluesea PS3 Myspace Video Converter



how to CONVERT mp3 to aac



avi Converter



AllRipper Flash to Mobile



BenQ competing against the shining 2008 SEPG Conference



Easy To Use Clipboard Tools



How To Convert Mp3 To Mp4



News ABOUT FTP Servers



Agile DVD to 3GP Converter



DVD Xvid Ripper



f4v Converter



SuperBurner DVD To Flash



Adobe at the end of acquiring, at a price well



Management And Distribution Directory



Sunday, December 27, 2009

Bestel iPhone Video Converter


Bestel iphone Video Converter is a powerful video convert tool for playback on iphone. It can convert almost all video formats, e.g. DivX, XviD, AVI, WMV, MPG, MPEG, ASF, RM, RMVB, MOV, ASX, SVCD, VCD format. It can provide batch file convert. At the same time, you can also select the video and audio parameter e.g. framerate, image size and so on as you like. Support almost all video formats, e.g. DivX, XviD, AVI, WMV, MPG, MPEG, ASF, RM, RMVB, MOV, ASX, SVCD, VCD format.
Batch video file convert.
Select the video and audio parameter as you like.
Directly convert any video file to MPEG-4 format without losing quality.
Automatically shutdown computer after long time conversion
Easy-to-use interface .
High-speed encoder ensures smooth conversion of video and audio data.
So easy to use that only a few clicks are enough.
Output settings are all adjustable. It's suitable for veterans as well.
Direct almost movies to 3GP Mobile Video without losing quality.

Friday, November 13, 2009

Youtube to iphone Top Rated


Hot popluar youtube video Converter + download + player tool. With YouTube tool you can also convert downloaded YouTube videos to a format compatible with your favorite portable device; including - iPod Video, iPod Touch, iPod Nano, iPhone, Zune, PSP, as well as video capable MP3 players, video capable mobile phones, and Pocket PC, And finally... YouTube tool's embedded player will allow you to watch all your favorite YouTube videos off-line. So now you can enjoy any .flv and .swf videos anytime!
Easily Convert all popular video formats. Provides the highest speed to download YouTube video. Support unlimited simultaneous downloading tasks. Supports auto-name your downloaded video title as the YoutTube page shows. Offers you the most convenient task management and the easiest control capability. About Conversion Features. - is the most powerful YouTube assistant on the planet.

Thursday, October 1, 2009

Extra Video to iPod MP4 Converter


Extra Video to iPod MP4 Converter is a powerful, universal Apple iPod, Apple iPhone, Apple TV video-conversion and video-split program that converts video files between all popular video formats, such as AVI, DIVX, XVID, MPEG, MPG, WMV, ASF, RM, RMVB, DAT, MOV, SWF, FLV, VOB and NSV, to Apple iPod, Apple iPhone, Apple TV MPEG-4 H.264 formats.

Idea for everyone! With just a few mouse clicks, you can convert your files. And you don?t have to be an expert to do it!

What can Extra Video to iPod MP4 Converter do for you:
1. Converts video from AVI, DIVX, XVID, MPEG, MPG, WMV, ASF, RM, RMVB, DAT, MOV, SWF, FLV, VOB and NSV to Apple iPod MPEG-4 H.264.
2. Converts video from AVI, DIVX, XVID, MPEG, MPG, WMV, ASF, RM, RMVB, DAT, MOV, SWF, FLV, VOB and NSV to Apple iPhone MPEG-4 H.264.
3. Converts video from AVI, DIVX, XVID, MPEG, MPG, WMV, ASF, RM, RMVB, DAT, MOV, SWF, FLV, VOB and NSV to Apple TV MPEG-4 H.264.
4. Sets the start position and end position of source file to convert.
5. Supports batch file conversion.
6. Can automatically shutdown computer after lengthy batch conversions.

Why do users like Extra Video to iPod MP4 Converter?
1. Super fast video converter speed. It takes less 1/8 of playback time to convert a video file. You will be amazed at how fast this works.
2. The intuitive interface lets you convert video files between most popular video formats as easy as 1 2 3!
3. Lifetime FREE Technical Support and FREE upgrades for registered users. Free trial download. 30-day money back guarantee. Download and try it out today!

More information pleae visit: http://www.dvdcopyrip.com/extra-video-to-ipod-mp4.html