HTML
Markup It indicates where the element begins and end.
Multiple spaces between words (there are many more keywords)
Use anchor tag with href=”#” for go to top
& href=”#id name” for reach to that particular section
NAME,TYPE,VALUE
CSS Diner - Where we feast on CSS Selectors! ([Link])
[Link]
CDN=Content delivery network
GIT is a version control system
SQL is Structured Query Language
not only SQL
A Database Management System (DBMS) is a program that controls creation,
maintenance and use of a database.
RDBMS stands for Relational Database Management System. RDBMS store the
data into the collection of tables.
SQL stands for Structured Query Language , and it is used to communicate with
the Database.{CRUD}
Database is nothing but an organized form of data for easy access, storing,
retrieval and managing of data.
PRIMARY KEY This is a special kind of unique key, and it has implicit NOT NULL
constraint. It means, Primary key values cannot be NULL.
A Unique key constraint uniquely identified each record in the database. This
provides uniqueness for the column or set of columns.
Relationship needs to be created between two tables by foreign key with the
primary key of another table.
A Surrogate Key is just a unique identifier for each row and it may use as a Primary Key
A function is a block of code which only runs when it is called
integrated development environment (IDE) is software for building applications that
combines common developer
#include: In C++, all lines that start with pound (#) sign are called directives
and are processed by a preprocessor which is a program invoked by the
compiler. The #include directive tells the compiler to include a file
and #include<iostream>
which contains declarations of all the standard input/output library functions.
In C the default return type of main is void, i.e. main() will not return anything.
But, in C++ default return type of main is int, i.e. main() will return an integer
value by default.
Keywords are pre-defined or reserved words in a programming language.
to perform a specific function in a program
they can’t be used as variable names because by doing so, we are trying to
assign a new meaning to the keyword which is not allowed.
Identifiers are used for the naming of variables, functions and arrays
Strings are nothing but an array of characters ended with a null character
his null character indicates the end of the string
Operators are symbols that trigger an action when applied to C variables and
other objects.
Blockchain is a decentralized database that keeps a permanent
record of all transactions.
Once a record is written to a blockchain, it is unable to be altered.
Ledgers
–
Oxford Learner’s Dictionaries define a ledger as “a book or electronic
document in which a bank, a business, etc. records the money it has paid
and received.”
Distributed ledgers take the advantages of traditional or general ledgers and
make them more resilient. Instead of having a single copy of the master data, a
distributed ledger shares the full data set across several network participants
(members); each member has a complete copy of the data.
Blockchain is a distributed ledger that adds immutability. Immutability means
that once something is written, it can't be edited or removed. With blockchain,
data cannot be modified. The full history of data can be traced back to the start
of the blockchain. Blockchain is a chain of transactions, contained in blocks,
hence the name blockchain.
1. Decentralization means that each member of a blockchain has
a complete copy of the data.
2. Blockchain changes from a central authority to a decentralized system where all members
communicate directly with all other members.
3. Transparency
4. Another piece of blockchain that increases trust is
transparency. Transparency means that the information stored
in the blockchain is visible to the members of the blockchain.
5. Auditability is another benefit of using blockchain.
Auditability speaks to how readily available and accessible
something is to audit. Blockchain, relying on the other benefits
already discussed, is a very auditable platform.
Blocks are the basic unit of information in blockchain. Recall that a
set of transactions results in a new block being created and added
into the blockchain after the previous block.
A block itself has three primary components. The block is made up
of the information for the current transaction, a cryptographic hash
of the previous block, and a time stamp.
A cryptographic hash is a unique string of characters that can only be
created using the information in the block and the cypher key. The hash is
unique such that no other block, combined with the key, would produce
the same hash. Additionally, if any of the data were changed in the block,
the hash would also change. This process of creating a cryptographic hash
of the previous block relates to blockchain’s immutability.
A consensus mechanism is a set of rules put in place by the
blockchain that determines how all the members recognize a valid
block addition.
As mentioned, consensus mechanisms let all the members know
that an update is valid, and that the update was made by a member
of the blockchain.
Proof of Work and Proof of Stake are two common examples of
consensus mechanisms. Both are commonly used in cryptocurrency
applications, and have different trade-offs.
There are three main types of blockchains: permissionless,
permissioned, and consortium. The type of blockchain will determine
how widely the blockchain is shared and who has the ability to make
updates to the blockchain.
A permissionless blockchain, also known as a public blockchain, is an open
blockchain. All the information on a permissionless blockchain is viewable
by all members, and all members are equally empowered to make
updates to the blockchain.
A permissioned, or private, blockchain is a blockchain in which membership is
controlled by a central authority. Despite having a central authority that
determines who is authorized to be a member of the blockchain and make
updates, the decentralized principle of blockchain still applies.
A consortium blockchain is a middle ground between permissionless and
permissioned. A consortium blockchain still restricts access to the blockchain,
but has a more distributed central authority. This allows a greater member set
than a permissioned blockchain, while still protecting information from general
public availability.
A blockchain framework is the set of standards on which a
blockchain operates.
The framework will also inform how information is shared and made
available.
Two popular blockchain frameworks are Ethereum and
Hyperledger Fabric.
Ethereum is a permissionless, or public, cryptocurrency blockchain
that provides a broad set of capabilities for using smart contracts,
running applications, and executing code.
Ethereum currently operates with a proof-of-work consensus
mechanism.
Ethereum 2.0 is intended to use a proof-of-stake consensus
mechanism, reducing the compute intensity, but prioritizing
members with more coins (or Ether).
Ethereum also has its own programming language (Solidity) that
enables you to create applications within the Ethereum Virtual
Machine (EVM).
Within the EVM, you can write, build, and run applications. You can
even establish fees or charges, in Ether (Ethereum’s cryptocurrency)
for running an application.
Hyperledger Fabric is a modular, permissioned (or private)
blockchain framework focused on sharing information with the
security and confidence of blockchain but maintaining privacy where
needed.
To build smart contracts, Hyperledger Fabric supports multiple
programming languages, including Go, Java, and JavaScript. In fact,
Hyperledger Fabric even supports Solidity (Ethereum’s language)
and the EVM.
Maintaining a blockchain network comes with different barriers to
overcome, from the very first steps of choosing your blockchain
framework, creating your first block, and establishing the network.
Once the network is established, you need to sort out how to handle
scaling the network, both by adding members or adding additional
compute power.
With the scalability of blockchain comes potentially increasing costs.
Having a mechanism to fairly share the costs of maintaining a
blockchain across participants can decrease the burden on a single
entity and help distribute the burden better.
Finally, having a secure blockchain network means being able to
control who is joining your private or consortium network. With all
these concerns in mind, it is time to move on to the next module.
Software is a set of program it perform certain task.
SDLC is software development life cycle , it tells about the complete phases of
software development activities==Analyse,design,develop,test,deploy.
If we develop the software according to the specific customer then it is project
otherwise it is product
STLC software testing life cycle==in this we have to do test planning, writing
test cases, understanding the test scenario, writing the test scenario, executing
our test cases, reporting the defects, finding defects again retesting the
software
We need to make sure that we need to deliver quality product to customer so
for that we need to test product and detect the bugs if it is present and fix it
before we deploy the product in the market.
Testing is to detect and identify the defects in the software
It is an activity to check whether the actual result
match the expected result and to ensure the software is defect free.
Integration testing -- also known as integration and testing (I&T) -- is a type of software
testing in which the different units, modules or components of a software application
are tested as a combined entity.
QA
-understand the customer requirement and use cases
- then they will create some test plan
-and then create the test cases
And if we find out any defect then we will inform the developer and they fix it.
Test cases= step by step actions which will need to perform on the software.
Unit testing and integration testing is done by the developers at the
program level.
System testing is done by testers. We don’t test logic of the software,we test
according to the customer requirement.
UAT=user acceptance testing
Verification is perform before software is ready.(Documentation part)
Static testing is a software testing method that involves the examination of a program,
along with any associated documents
Dynamic testing = we test the application or software.
QA is defining the process/prevention activity
QC is following the process/detection activity
QE=write codes to test the software/Automation testers
Formal testing=they write test scenarios, test cases, write bug tracking, they
do everything in a formal way
User friendly= the application is user friendly if the application teaches user
how to use the application(placeholder)
Scrum master= who tells the tester and developer team what to do ,who
checks whether the application is according to the customer requirement or
not
Regression testing is to check an application after fixing any defect
Performance testing is to check the stability,load time of application by
applying the load(stability means handle the number of users easily at a time)
Link testing,cookies,database=functional testing
Performance, load = non-functional testing
TEST DESIGN TECHNIQUES
-Helps you to design better cases
-Helps reduces the no. of test cases
Boundary value analysis
Equivalence class partitioning
Decision table based testing
State transition
Error guessing
REGRESSION TESTING=repeated testing of an already tested program,after
modification
RETESTING= testing the same thing multiple times
END TO END testing is testing of overall functionalities of the system
Exploratory testing is all about discovery,investigation and learning(without
documentation)
AD hoc testing is an informal testing type with an aim to break the system(here
we know lit bit about application)
Selenium is a free (open-source) automated testing framework used to validate
web applications across different browsers and platforms. You can use multiple
programming languages like Java, C#, Python etc to create Selenium Test
Scripts