INGLES II - ING. EN SISTEMAS
Blog destinado a los alumnos de Inglés II de la Universidad Tecnológica Nacional. Regional Tucumán. DESARROLLADO POR: PROF. SILVINA BASCARY
Monday, July 1, 2024
Monday, June 17, 2024
READING COMPREHENSION ACTIVITY Object-Oriented Analysis
Resuelva el ejercicio de opciones múltiples con la información del texto:
Object-Oriented Analysis
Object-Oriented Analysis (OOA) is the
first technical activity performed as part of object-oriented software
engineering. OOA introduces new concepts to investigate a problem. It is based
on a set of basic principles, which are as follows:
·
The information domain is
modeled:
·
Let’s say you’re building a game. OOA
helps you figure out all the things you need to know about the game world – the
characters, their features, and how they interact. It is like making a map of
everything important.
·
Behavior is represented:
·
OOA also helps you understand what
your game characters will do. If a character jumps when you press a button, OOA
helps describe that action. It is like writing down a script for each
character.
·
The function is described:
·
Every program has specific tasks or
jobs it needs to do. OOA helps you list and describe these jobs. In our game,
it could be tasks like moving characters or keeping score. It’s like making a
to-do list for your software.
·
Data, functional, and
behavioral models are divided to uncover greater detail:
·
OOA is smart about breaking things
into different parts. It splits the job into three categories: things your game
knows (like scores), things your game does (like jumping), and how things in
your game behave (like characters moving around). This makes it easier to
understand.
Seleccione la respuesta correcta
1. What does Object-Oriented Analysis help with when
building a game?
a. Creating music for the game
b. Figuring out the game world, characters, and interactions
c. Testing the game for bugs
d. Designing the game marketing plan
2. How is behavior represented in Object-Oriented Analysis
for a game character?
a. By designing the game levels
b. By describing the character's appearance
c. By writing a script for the character's actions
d. By choosing the game's color scheme
3. What aspect of the program is described using
Object-Oriented Analysis?
a. The player's high score
b. The type of computer used to run the game
c. Specific tasks or jobs the program needs to do
d. The background music in the game
4. In Object-Oriented Analysis, how are data, functional,
and behavioral models divided?
a. Into sections based on the player's age
b. To uncover greater details about the game world
c. To connect with other game developers
d. To make the game more difficult
5. Why is it important to model the information domain in
Object-Oriented Analysis?
a. To confuse the players
b. To make a map of everything important in the game world
c. To hide information from the game characters
d. To reduce the game's performance
6. What does OOA help to list and describe in a program?
a. The number of languages the game supports
b. The tasks or jobs the program needs to do
c. The pricing of in-game items
d. The names of the game developers
7. How does OOA help in understanding a game's characters?
a. By controlling the characters' emotions
b. By keeping track of the players' progress
c. By describing the actions and behaviors of the characters
d. By changing the game's genre
8. In OOA, what categories are used to split the job for
greater detail?
a. Music, sound effects, graphics
b. Game storyline, character design, game mechanics
c. Data, functional, behavioral models
d. Player skills, game levels, game objectives
9. Which of the following is NOT a key principle of
Object-Oriented Analysis?
a. Modeling the information domain
b. Describing behavior of the program
c. Keeping the game code a secret
d. Dividing models for greater detail
10. Why is dividing data, functional, and behavioral models
important in OOA?
a. To make the game more challenging
b. To confuse the game developers
c. To uncover greater detail about the program's features
d. To hide information from the players
Fuente: www.en.wikipedia.org (Accesso 4 de marzo, 2024)
Monday, November 8, 2021
Introducing Windows 11
published June 24, 2021
CLICK HERE TO WATCH WINDOWS 11 VIDEO
Windows has always existed to be a stage for the world’s innovation. It’s been the backbone of global businesses and where scrappy startups became household names. The web was born and grew up on Windows. It’s the place where many of us wrote our first email, played our first PC game and wrote our first line of code. Windows is the place people go to create, to connect, to learn and to achieve – a platform over a billion people today rely on.
The responsibility of designing for that many people is one we don’t take lightly. The past 18 months brought an incredible shift in how we used our PCs; we went from fitting the PC into our lives to trying to fit our whole lives into the PC. Our devices weren’t just where we went for meetings, classes and to get things done, but where we came to play games with friends, binge watch our favorite shows and, perhaps most meaningfully, connect with one another. In the process we found ourselves recreating the office banter, the hallway chatter, workouts, happy hours and holiday celebrations – digitally.
What was so powerful was the shift in the PC we saw and felt – from something practical and functional to something personal and emotional. This is what inspired us as we were building the next generation of Windows. To build you a place that feels familiar, where you can create, learn, play and most importantly, connect in all new ways.
Available at https://blogs.windows.com. Acceso el 8 de noviembre, 2021
Gigabit Ethernet
In computer networking, Gigabit Ethernet (GbE or 1 GigE) is the term applied to transmitting Ethernet frames at a rate of a gigabit per second. The most popular variant 1000BASE-T is defined by the IEEE 802.3ab standard. It came into use in 1999, and has replaced Fast Ethernet in wired local networks due to its considerable speed improvement over Fast Ethernet, as well as its use of cables and equipment that are widely available, economical, and similar to previous standards.
History
Ethernet was the result of research conducted at Xerox PARC in the early 1970s, and later evolved into a widely implemented physical and link layer protocol. Fast Ethernet increased the speed from 10 to 100 megabits per second (Mbit/s). Gigabit Ethernet was the next iteration, increasing the speed to 1000 Mbit/s.
- The initial standard for Gigabit Ethernet was produced by the IEEE in June 1998 as IEEE 802.3z, and required optical fiber. 802.3z is commonly referred to as 1000BASE-X, where -X refers to either -CX, -SX, -LX, or (non-standard) -ZX. (For the history behind the "X" see Fast Ethernet § Nomenclature.)
- IEEE 802.3ab, ratified in 1999, defines Gigabit Ethernet transmission over unshielded twisted pair (UTP) category 5, 5e or 6 cabling, and became known as 1000BASE-T. With the ratification of 802.3ab, Gigabit Ethernet became a desktop technology as organizations could use their existing copper cabling infrastructure.
- IEEE 802.3ah, ratified in 2004, added two more gigabit fiber standards: 1000BASE-LX10 (which was already widely implemented as vendor-specific extension) and 1000BASE-BX10. This was part of a larger group of protocols known as Ethernet in the First Mile.
Initially, Gigabit Ethernet was deployed in high-capacity backbone network links (for instance, on a high-capacity campus network). In 2000, Apple's Power Mac G4 and PowerBook G4 were the first mass-produced personal computers to feature the 1000BASE-T connection. It quickly became a built-in feature in many other computers.
Half-duplex gigabit links connected through repeater hubs were part of the IEEE specification, but the specification is not updated anymore and full-duplex operation with switches is used exclusively.
Available at https://en.wikipedia.org. Acceso el 8 de noviembre, 2021.
Monday, July 5, 2021
What is a data flow diagram? (Actividades
What is a data flow diagram?
A data flow diagram (DFD) maps out the flow of information for any process or system. It uses defined symbols like rectangles, circles and arrows, plus short text labels, to show data inputs, outputs, storage points and the routes between each destination.
Data flowcharts can range from simple, even hand-drawn process overviews, to in-depth, multi-level DFDs that dig progressively deeper into how the data is handled. They can be used to analyze an existing system or model a new one.
Like all the best diagrams and charts, a DFD can often visually “say” things that would be hard to explain in words, and they work for both technical and nontechnical audiences, from developer to CEO. That’s why DFDs remain so popular after all these years. While they work well for data flow software and systems, they are less applicable nowadays to visualizing interactive, real-time or database-oriented software or systems.
It's easy to understand the flow of data through systems with the right data flow diagram softwareThis guide provides everything you need to know about data flow diagrams, including definitions, history, and symbols and notations. You'll learn the different levels of a DFD, the difference between a logical and a physical DFD and tips for making a DFD.
Available on https://www.lucidchart.com/pages/data-flow-diagram. Acceso el 1 de noviembre, 2020.
1. ¿ Para qué sirve un diagrama de flujo?
2. ¿ Qué símbolos usa?
3. ¿ Cómo varían estos diagramas?
4. ¿ En qué se pueden usar?
1. Un diagrama de flujo muestra cosas visualmente.
2. No funcionan bien para sistemas de datos.
3. Son muy aplicables para sistemas en tiempo real.
1. It's easy to ...
2. This guide provides..
3.You'll learn ...
Sunday, November 1, 2020
FUNCTIONS IN C PROGRAMMING (Activities)
Do the exercises based on the text
Functions in C Programming with examples
By Chaitanya Singh
We will learn functions in C programming.
A function is a block of statements that perform a same task. If you are writing a C program and you need to perform a same task in that program more than once, you have two options:
a) Use the same set of statements every time you want to perform the task
b) Create a function to perform that task, and just call it every time you need to perform that task.
Using option (b) is a good practice and a good programmer always uses functions while writing code in C.
Why we need functions in C
Functions are used because of following reasons:
a) To improve the readability of code.
b) Improving the reusability of the code the same function can be used in any program rather than writing the same code from scratch.
c) Debugging of the code would be easier if you use functions because errors are easy to be traced.
d) It reduces the size of the code, duplicated set of statements are replaced by function calls.
Available on https://beginnersbook.com Acceso el 1 de noviembre, 2020.
A- Diga si las afirmaciones son verdaderas o falsas. Justifique las falsas.
1. Aprenderemos las funciones de la programación en C.
2. Una función es un bloqueo de declaraciones.
3. Una función realiza diferentes tareas.
B- Complete en español.
1. Use the same ...
2. Create a function ...
3. Using option (b) is ...
C- Conteste las siguientes preguntas:
1. ¿ Qué mejora las funciones de C?
2. ¿ Qué se puede usar para no escribir el mismo código desde cero?
3. ¿ Qué sería más fácil si se usa si se usan las funciones?
Modular Programming CONTEXTUAL REFERENCES
Modular Programming
by Kenneth Leroy Busbee and Dave Braunschweig
Overview
Modular programming is a software design technique that emphasizes separating the functionality of a program into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality.
Concept of Modularization
One of the most important concepts of programming is the ability to group some lines of code into a unit that can be included in our program. The original word for this was a sub-program. Other names include: macro, sub-routine, procedure, module and function. Functions are important because they allow us to take large complicated programs and to divide them into smaller manageable pieces. Because the function is a smaller piece of the overall program, we can concentrate on what we want it to do and test it to make sure it works properly. Generally, functions fall into two categories:
- Program Control – Functions used to simply sub-divide and control the program. These functions are unique to the program being written. Other programs may use similar functions, maybe even functions with the same name, but the content of the functions are almost always very different.
- Specific Task – Functions designed to be used with several programs. These functions perform a specific task and thus are usable in many different programs because the other programs also need to do the specific task. Specific task functions are sometimes referred to as building blocks. Because they are already coded and tested, we can use them with confidence to more efficiently write a large program.
- define a function (its definition or the code it will execute)
- call a function
- declare a function (a prototype is a declaration to a compiler)
The main program must establish the existence of functions used in that program. Depending on the programming language, there is a formal way to:
Monday, October 26, 2020
Formal Syntax and Semantics of Programming Languages
REALICE LAS ACTIVIDADES QUE SE ENCUENTRAN AL FINAL DEL TEXTO
Chapter 1
SPECIFYING SYNTAX
Language provides a means of communication by sound and written symbols. Human beings learn language as a consequence of their life experiences, but in linguistics—the science of languages—the forms and meanings of languages are subjected to a more rigorous examination. This science can also be applied to the subject of this text, programming languages. In contrast to the natural languages, with which we communicate our thoughts and feelings, programming languages can be viewed as artificial languages defined by men and women initially for the purpose of communicating with computers but, as importantly, for communicating algorithms among people.
Many of the methods and much of the terminology of linguistics apply to programming languages. For example, language definitions consist of three components:
1. Syntax refers to the ways symbols may be combined to create well-formed sentences (or programs) in the language. Syntax defines the formal relations between the constituents of a language, thereby providing a structural description of the various expressions that make up legal strings in the language. Syntax deals solely with the form and structure of symbols in a language without any consideration given to their meaning.
2. Semantics reveals the meaning of syntactically valid strings in a language. For natural languages, this means correlating sentences and phrases with the objects, thoughts, and feelings of our experiences. For programming languages, semantics describes the behavior that a computer follows when executing a program in the language. We might disclose this behavior by describing the relationship between the input and output of a program or by a step-by-step explanation of how a program will execute on a real or an abstract machine.
3. Pragmatics alludes to those aspects of language that involve the users of the language, namely psychological and sociological phenomena such as utility, scope of application, and effects on the users. For programming languages, pragmatics includes issues such as ease of implementation, efficiency in application, and programming methodology.
Syntax must be specified prior to semantics since meaning can be given only to correctly formed expressions in a language. Similarly, semantics needs to be formulated before considering the issues of pragmatics, since interaction with human users can be considered only for expressions whose meaning is understood. In the current text, we are primarily concerned with syntax and semantics, leaving the subject of pragmatics to those who design and implement programming languages, chiefly compiler writers. Our paramount goal is to explain methods for furnishing a precise definition of the syntax and semantics of a programming language. We begin by describing a metalanguage for syntax specification called BNF. We then use it to define the syntax of the main programming language employed in this text, a small imperative language called Wren. After a brief look at variants of BNF, the chapter concludes with a discussion of the abstract syntax of a programming language. At the simplest level, languages are sets of sentences, each consisting of a finite sequence of symbols from some finite alphabet. Any really interesting language has an infinite number of sentences. This does not mean that it has an infinitely long sentence but that there is no maximum length for all the finite length sentences. The initial concern in describing languages is how to specify an infinite set with notation that is finite. We will see that a BNF grammar is a finite specification of a language that may be infinite.
Available at https://www.mobt3ath.net/uplode/book/book-26246.pdf. Acceso el 26 de octubre, 2020.
Programming Logic and Languages: Syntax and semantics | | UPV(Link to YOUTUBE)
ABRA EL LINK Y LEA EN ESPAÑOL LAS DIAPOSITIVAS DEL VIDEO
Friday, September 21, 2018
Monday, October 3, 2016
ALTERNATIVES TO C++ (Reading Comprehension)
Lea el texto en español
Alternatives to C/C++ for system programming in a distributed multicore world
There are three new systems programming languages that have appeared in the last few years which are attempting to provide a safe, productive, and efficient parallel programming capability. Go is a new language from Google [1], Rust is a new language from Mozilla [2], and ParaSail is a new language from AdaCore [3][4].
The designers of Go, Rust, and ParaSail all are facing a common challenge -- how to help programmers address the new distributed and multicore architectures, without having the complexity of programming going past that which is manageable by the professional, yet still human, programmer. All programming languages evolve, and as a rule, they tend to get more complex, not less so.
When the architectures changes radically, as with the new massively distributed and/or multicore/manycore architectures, this may mean that the language no longer hangs together at all, and instead has become a federation of sublanguages, much like a house that has been added onto repeatedly with a different style for each addition.
Because of the complexity curse associated with language evolution, when there is a significant shift in the hardware landscape, there is a strong temptation to start over in programming language design. After many years of a relatively stable programming language world, we now see a new burst of activity on the language design front, inspired in large part by the sense that our existing mainstream languages are either not going to be supportive enough, or that they are becoming simply too complex in trying to support both the old and new hardware paradigms through a series of language extensions.
TEXT: DIRECT ORACLE ACCESS (Reading Comprehension)
If you are using Borland's Delphi or C++Builder to develop Oracle applications, then the Direct Oracle Access component set can help you to make a seamless integration between this great development tool and database system. Not only will your application take maximum advantage of both products, your application development process will also benefit from the following key features: |
High performanceBoth online transaction and batch processing applications can benefit from Oracle's performance features. Direct Oracle Access, as the name suggests, directly accesses the Oracle Interface. This guarantees optimal performance for standard database access functions. Support for Array Fetching, Array DML, PL/SQL Blocks, PL/SQL Tables, Local Statement Caching and the Direct Path Load Engine enable you to optimize your application's performance critical functions even more. | High performance |
Easy application distributionA Direct Oracle Access application does not require middleware like the BDE or ODBC, it merely requires Oracle SQL*Net or Net8. Consequently you can deploy your application without many of the version dependency or configuration problems typically involved with middleware installation. | Application distribution |
Oracle Package supportMost PL/SQL code in Oracle databases is programmed in packages. Direct Oracle Access provides a TOraclePackage component that allows you to easily call packaged program units without detailed declarations of these program units and their parameters. Furthermore Direct Oracle Access includes a Package Wizard that can generate classes to encapsulate the program units and record types defined in packages. This will make your Oracle packages a natural extension of the Object Pascal or C++ language. | The Package Wizard |
TOracleDataSetThe dataset component in Direct Oracle Access supports Oracle record locking, record refreshing, server generated values, automatic sequence value generation, and BLOB compression. Master/detail relations can automatically be setup if a foreign key exists between the master and detail table or if the master table contains one or more collection columns or attributes (nested table or varray). The TOracleDataSet can use much of the information in the Oracle Dictionary at run time. Server Constraints can be checked on the client, and constraint error messages can be read from a message table. Format masks, range values and default values can also be read from the dictionary. This allows you to create applications with a minimum amount of 'database knowlegde' compiled into the executable, dynamically adopting changes in the database without even recompiling it. | The TOracleDataSet |
Query By Example modeThe TOracleDataSet component has a Query By Example mode that enables you to provide QBE Forms in your application without any additional programming, and without any additional components or controls. The resulting QBE queries are performed on the Oracle Server, so that performance will be optimal and network traffic will be minimal. The user can supply simple query values such as JONES or 100, can include wildcard characters for string values such as JON%, and can include comparison operators such as >, <, NOT, BETWEEN, IN and so on. | Query By Example |
Oracle MonitorTo monitor the database access activities of your Direct Oracle Access application you can use the Oracle Monitor utility. It displays the SQL, variables, timestamp, elapsed time, network statistics, database statistics and query execution plan of each activity. This can be helpful to find performance bottlenecks, for tuning purposes, and to solve application errors. | The Oracle Monitor |
Alert and Pipe eventsThe Oracle Server includes a dbms_alert and dbms_pipe package for event processing. The TOracleEvent in Direct Oracle Access can function as a receiver for these events. It works in a background thread of your application, and can propagate database events to the familiar object events. These events can occur synchronously or asynchronously with the main thread of your application. | Alert and Pipe events |
SQL scriptsIf you need to execute many data definition language (DDL) statements, for example to perform the database installation part of your application, you can use the TOracleScript component. It has a property editor that allows you to develop the script and the individual commands. The extendible script language follows the basic SQL*Plus syntax and supports all SQL statements. It also supports substitution variables to make your scriptscustomizable. | SQL Scripts |
Advanced QueueingTo take advantage of the Advanced Queuing option of Oracle8 you can make use of the TOracleQueue component. The TOracleQueue component encapsulates the basic functionality of the DBMS_AQ package. It provides a convenient way to enqueue messages into a queue or to dequeue messages from a queue. Messages can be dequeued in a background thread of your application, and the events that are generated in threaded mode can occur synchronously or asynchronously with the main thread of your application. |
Session PoolingIn server applications that frequently need to create sessions to process requests from client applications, it may be useful to use connection pooling. Without a pooling concept, each request could lead to an actual database logon and logoff. By using the TOracleSessionPool component, you can maintain a pool of database sessions that can be used and reused for different requests. You can define the minimum an maximum number of sessions in the pool, define the TimeOut behavior for idle sessions in the pool, and preset the username, password and database. |
Support for Oracle specific featuresDirect Oracle Access supports many Oracle specific features. Besides the features mentioned above, it supports Oracle8 and Oracle8i features like LOB Locators, Objects & References, XMLTYPE, Timestamps, Scrollable Queries, Password Expiration, External Procedure development, and the Oracle Services for MTS. |
System requirements Direct Oracle Access requires a Windows 95, 98, ME, NT4, 2000, XP, Vista, Windows 7, Windows 8 or Windows 10 client, with Oracle SQL*Net, Net 8, Net 9, Net 10, Net 11 or Net 12 installed. The supported Oracle Server versions are 7.x, 8.x, 8i, 9i, 10g, 11g and 12c on any platform. Direct Oracle Access is available for all recent versions of Delphi and C++Builder.Trial versions You can download a fully functional trial version to try out Direct Oracle Access yourself. Visit our ordering page for ordering details and price information. We have a customer list available if you want to get an impression of what organizations are using Direct Oracle Access. Source:https://www.allroundautomations.com/doa.html |